牛骨文教育服务平台(让学习变的简单)

【Qt编程】基于Qt的词典开发系列--词典框架设计及成品展示

去年暑假的时候,作为学习Qt的实战,我写了一个名为《我爱查词典》的词典软件。后来由于导师项目及上课等原因,时间不足,所以该软件的部分功能欠缺,性能有待改善。这学期重新拿出来看时,又有很多东西都不熟悉了。恰逢这学期课比较少,于是乎想写写关于这个软件制作的一系列文章,对日后重拾该软件时能够较快入手。当然,也非常乐意读者们在该软件的基础上添加一些功能,源代码会在该系列文章写完之后公布。可运行的词典软件的下载地址:http://download.csdn.net/detail/tengweitw/8548767

下面先给出软件的架构,文章后面会给出各个功能展示图。

词典的功能模块

        

1、无边框窗口的拖动、放大缩小

2、系统托盘的显示

3、登录管理

4、用户账号显示

5、置顶、换肤、最小化、关闭按钮

6、调用本地浏览器查词

7、查词历史前进后退按钮

8、查词框、搜索按钮

9、三种查词:网络查词、本地查词、网页查词

10、单词信息显示窗口

11、主菜单:置顶、字体大小选择、匹配模式选择、注销、关于、退出

12、单词本

13、本地词典的选择模块

14、网上学堂

15、网络连通状态标志

16、本地词典使用状态

工程目录文件

下面给出各个文件的大概功能说明:

1、basicwindow.h、basicwindow.cpp和basicwindow.ui文件定义了Basicwindow类,主要实现的是边框窗口的拖动和缩放,软件中其他的窗口设计大都继承该类

2、completelineedit.h和completelineedit.cpp文件定义了CompleteLineEdit类,该类主要是改进QLineEdit类,可以有下拉列表的显示,软件中功能8就用到该类。

3、libmanager.h、libmanager.cpp和libmanager.ui文件用于生成本地词典的选择界面。

4、localdict.h和localdict.cpp文件定义了LocalDict类,用于读取本地的词典库。

5、logindialog.h、logindialog.cpp和logindialog.ui定义了LoginDialog类,用于管理用户帐号的登录。

6、network.h和network.cpp文件定义了netWork类,用于根据扇贝网的公开API,使用帐号登录扇贝网,进行网络查词。

7、qmenubutton.h和qmenubutton.cpp定义了QMenuButton类,功能11继承了该类,使之可以出现下拉菜单。

8、searchwindow.h、searchwindow.cpp和searchwindow.ui定义了SearchWindow类,用于软件主界面的显示,这个是软件的核心部分。

9、word.h和word.cpp文件定义了Word类,主要用于储存从网络查词获得的单词内容。

10、wordbook.h、wordbook.cpp和wordbook.ui文件定义了WordBook类,用于管理单词本,此部分功能尚未实现。

11、wordmodify.h、wordmodify.cpp和wordmodify.ui文件定义了WordModify,用于单词本中单词的修改功能。

部分功能的展示图

1、主界面

2、网络查词

3、本地查词

4、网络搜索

5、换肤功能

6、搜索模式:句首匹配、句中匹配

7、主菜单

8、托盘显示

9、其他一些截图: