去年暑假的时候,作为学习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、其他一些截图:

基于Qt的词典开发系列

  1. 词典框架设计及成品展示
  2. 本地词典的设计
  3. 开始菜单的设计
  4. 无边框窗口的缩放与拖动
  5. 无边框窗口的拖动
  6. 界面美化设计
  7. 调用网络API
  8. 用户登录及API调用的实现
  9. JSON数据解析
  10. 国际音标的显示
  11. 系统托盘的显示
  12. 调用讲述人
  13. 音频播放
  14. 自动补全功能
  15. HTML特殊字符及正则表达式
  16. 后序
作品下载地址(发布版):http://download.csdn.net/detail/tengweitw/8548767
作品下载地址(绿色版):http://download.csdn.net/detail/tengweitw/8830495
源码下载地址:http://download.csdn.net/detail/tengweitw/8830503

原文:http://blog.csdn.net/tengweitw/article/details/44757875
作者:nineheadedbird

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

  1. 【Qt编程】基于Qt的词典开发系列六--界面美化设计

    本文讲一讲界面设计,作品要面向用户,界面设计的好坏直接影响到用户的体验.现在的窗口设计基本都是扁平化的,你可以从window XP与window 8的窗口可以明显感觉出来.当然除了窗口本身的效果,窗口 ...

  2. 【Qt编程】基于Qt的词典开发系列十二调用讲述人

    我们知道,win7系统自带有讲述人,即可以机器读出当前内容,具体可以将电脑锁定,然后点击左下角的按钮即可.之前在用Matlab写扫雷游戏的时候,也曾经调用过讲述人来进行游戏的语音提示.具体的Matla ...

  3. .ne中的控制器循环出来的数据如何显示在视图上_让不懂编程的人爱上iPhone开发系列2 iOS12+Swift4.2版-Checklists-16...

    让不懂编程的人爱上iPhone开发系列2 iOS12+Swift4.2版-Checklists-16 添加导航栏按钮 说明: 本系列教程改编自raywenderlich.com中的iOS Appren ...

  4. 【安卓开发系列 -- APP 开源框架】IO 框架 OKIO

    [安卓开发系列 -- APP 开源框架]IO 框架 OKIO [1]OKIO的整体框架 [1.1]OKIO的整体框架图示 [1.2]OKIO的优势 CPU和内存消耗低,OKIO采用了segment机制 ...

  5. 微信公众号开发--基于WxJava (微信开发 Java SDK)框架的,群发消息推送实现

    群发消息推送实现,示例: InputStream inputStream = null;/*HttpURLConnection conn = (HttpURLConnection) new URL(& ...

  6. Qt:基于Qt开发的轻量级HTTP/HTTPS服务器

    介绍 JQHttpServer是基于Qt开发的轻量级HTTP/HTTPS服务器,目前支持GET和POST两个协议. 底层有QTcpSocket.QSslSocket和QLocalSocket三个版本, ...

  7. Qt编程(一) Qt框架简介

    1.Qt5 架构 qt 5将所有模块分为三个部分:Qt基本模块(Essentials).Qt扩展模块(Add-ons). 开发工具(Tools) 基本模块定义了基础功能,是核心,兼容所有平台.包括: ...

  8. 【QT编程】QT对象间通讯——信号与槽

    01.目录 文章目录 01.目录 02.信号与槽介绍 03.信号与槽机制 04.信号(Signal) 05.槽函数(Slot) 06.一个示例 07.一个真实的示例 08.信号和槽使用默认参数 09. ...

  9. BizTalk开发系列(十二) Schema设计之Group与Order

    更多内容请查看:BizTalk动手实验系列目录                       BizTalk 开发系列 开发BizTalk项目的时候会先约定各系统之间往来的消息格式. 由于BizTalk ...

最新文章

  1. Vue中JS遍历后台JAVA返回的Map数据,构造对象数组数据格式
  2. AutoCAD.NET二次开发注意事项与开发技巧
  3. sencha touch 手势识别左右滑动
  4. 最强鸿蒙系统txt_鸿蒙系统升级时间确认,哪些手机有望成为首批“宠儿”?
  5. 求解最长回文子串----Manacher 算法
  6. android开机动画多长时间_Android开机动画原理分析
  7. Git flow(使用工具自动git flow+解决合并冲突)
  8. 去哪儿网2017校招在线笔试(前端工程师)编程题及JavaScript代码
  9. 罗技鼠标宏压枪 - 绝地求生 -刺激战场
  10. WPS Office 2016 专业版终身授权正版
  11. ubuntu16.04下笔记本自带摄像头编译运行PTAM
  12. KEIL5报错error: #67: expected a “}“
  13. MAP实现一个key,对应多个Value值。
  14. cocoapods最新踩坑以及更新
  15. 适合中介的二手房房源管理系统
  16. 小波卷积网络Multi-level Wavelet-CNN for Image Restoration论文阅读笔记
  17. 2017中国各省份GDP排名(预计)
  18. web调试工具使用fiddler
  19. 电气工程专业转行做软件测试,电气测试工程师面试题有哪些?
  20. 生信技能17 - 获取外显子和内含子位置坐标及编码序列

热门文章

  1. 渗透基础——通过LDAP协议暴力破解域用户的口令
  2. 爱茉莉太平洋全新奢华护肤品牌“时妍露SIENU”正式上线京东商城
  3. 2015年蓝桥杯C/C++组B组第三题:三羊献瑞
  4. 篇6:linux下GCC编译生成的可执行程序的步骤详解
  5. 我的勇者服务器显示关闭,我的勇者退出工会流程一览
  6. p40pro鸿蒙系统好用吗,华为p40pro可以升级鸿蒙系统吗?
  7. Android UCV 同时打开多路摄像头
  8. Excel快速打印底端标题,教你一招,肯定行!
  9. Performance使用教程:分析运行时性能
  10. android dpi 修改,Android屏幕适配之修改density