基本信息
编辑推荐
畅销书升级版
诸多大型项目工程开发经验的凝聚之作
内容简介
计算机书籍
本书详细介绍了Qt的基础知识和GUI编程应用,举例翔实,内容全面,基本涵盖了Qt编程的各个方面。全书共分3篇25章,包括Qt GUI编程的基础知识(对话框、基础窗口部件、程序主窗口、布局管理)、中级编程(2D绘图、拖放操作与剪贴板、文件处理、网络编程、多线程、事件机制、数据库及Qt风格)和高级应用(XML应用、模型/视图结构、高级绘图、进程间通信、Qt插件和脚本应用、多媒体、浏览器、动画及状态机等)。同时,在相关章节也穿插了一些重要的知识点,包括元对象系统、属性系统、对象树机制、信号/槽机制等。
本书体系完整,内容实用,可以作为Qt初学者的入门进阶书籍,适合具有一定开发经验的Qt程序员作为参考书,也可以作为大中专院校相关专业及培训机构的教材。
目录
第1章 Qt初步实践 2
1.1 第一个Qt程序 2
1.1.1 建立主程序 2
1.1.2 建立工程 3
1.1.3 编译/运行第一个Qt应用程序 8
1.1.4 第一个Qt程序的代码分析 9
1.2 使用Qt布局管理器 11
1.3 关联操作 12
1.4 小结 13
第2章 对话框—— QDialog 14
2.1 自定义对话框 14
2.1.1 建立新类 14
2.1.2 添加子窗口部件 16
2.2 加入主程序 22
2.3 Qt内建(built-in)对话框 25
2.4 小结 35
第3章 基础窗口部件—— QWidget 36
3.1 Qt设计器绘制窗口部件 36
3.1.1 Qt设计器基础 36
前言
Qt新特点
归纳起来有以下几点:
1.支持LGPL(GNU Lesser General Public License)协议。
我们知道,当一个自由软件使用GPL声明时,该软件的使用者有权重新发布、修改该软件,并得到该软件的源代码;但只要使用者在其程序中使用了该自由软件,或者是使用修改后的软件,那么使用者的程序也必须公布其源代码,同时允许别人发布、修改。也就是说,使用GPL声明下的自由软件开发出来的新软件也一定是自由软件。LGPL是GPL的变种,与 GPL的最大不同是,可以私有使用LGPL授权的自由软件,开发出来的新软件可以是私有的而不需要是自由软件。Qt支持LGPL协议后,用户使用开源版Qt获得了更大的自由度。
2.开放了Qt源代码库,并鼓励社区参与。
以前Qt虽是开源代码,但源码库并未开放,现在在http://qt.gitorious.org/可以自由地访问Qt源码库,并可以为Qt做出自己的贡献。Qt的源码库使用分布式版本控制系统Git管理,也可以通过浏览器浏览。这里有Qt,Qt Creator,Qt Jambi等多个项目等着您的参与!开放源代码库,拉近了Qt开发者与用户之间的距离。
3.彻底开放了原来商业平台的代码。
原来只能在商业版中使用的ActiveQt,Oracle数据库驱动等,现在都能在开源版中使用。开源版和商业版不再是两个源码不同的版本,只是遵守的协议不同而已。开源版用户终于能享受全功能Qt了。同时在Windows平台上也开放了Visual Studio插件和相应支持,开源版用户在Windows上除使用MinGW开发外又多了一项选择,使用Visual Studio开发Qt应用。
4.对嵌入式平台支持力度加大。
Qt除了继续支持嵌入式Linux平台外,增加了对Windows CE,Symbian,Maemo 5等嵌入式平台的支持。与此同时,推出了Qt Mobility软件包,对手机上的GPS设备、多媒体、短信、电话等功能提供了较完善的支持,让用户开发手机应用更为便利。同时Qt还对实时操作系统VxWorks和QNX提供了社区支持,为平淡无奇的嵌入式图形系统打了一剂强心针。
5.最后就是不断添加到Qt软件包中的功能,并行计算框架、动画框架、状态机框架、多媒体框架等几个框架为Qt增色不少。
浏览器、XQuery、XPATH、XSLT、多点触摸、图形效果支持提升了Qt的能力。当然还有其他功能和性能改进不能一一列出,这都使得Qt 4走向了成熟。Qt 4.7中更是引入了类似于Windows ZAML的声明式UI编程的功能,该功能命名为Qt Quick。
总之,在几年前,我们还需要向周围的人介绍什么是Qt,如今只需要对如何更好地应用Qt进行交流。在国内图书市场上,也出现了为数不少Qt相关的书籍。为了与时俱进,本书也根据新版的Qt 4.7 进行了修改,推出了第2版,但本版中不包括Qt Quick编程介绍。
本书的结构
本书共25章,每章讨论一个专题。章节安排上基本采用循序渐进、由浅到深的原则。但最后的高级篇中的章节没有很强的关联,可以按照随意的顺序阅读。每章内容及作者分述如下:
篇章章 名作者内 容 简 介页码
初级篇第1章 Qt初步实践卢传富建立了第一个较简单的Qt应用程序,在GUI用户界面中显示一行中文2
第2章 对话框
——QDialog卢传富介绍了Qt的对话框类QDialog,实现了一个自定义的登录对话框,举例说明了Qt提供的内建对话框类的应用14