Linux Qt GUI开发详解

出版社:北京航空航天大学出版社
出版日期:2013-1
ISBN:9787512410343
作者:李彬
页数:318页

章节摘录

版权页:   插图:   提示缺少了Q_OBJECT宏的定义,把l2行注释去掉,编译程序这个错误不会出现了。但是由于我们没有写myslots()函数的具体实现会报一个未定义错误,先不用管,回过头看看我们做了什么。原来,我们已经在不经意间写了一个槽函数,也看到了声明槽函数需要用到slots关键字,更得到了在我们的类里面要定义槽函数必须写上Q_OBJECT这个宏(否则出错误提示)。正如我们看到的,Qt所谓槽的定义和普通的类成员函数定义没有太大的区别,用上Qt的关键字slots声明即可。当然这个关键字不属于C++,所以标准C++编译器(比如我们用的g++)遇到slots肯定是编译通不过的,错误提示就是“ISO C++forbids declaration of‘slots' with notype"。加上了这个Q_OBJECT宏之后,程序是怎么编译过去的?g++直接编译我们的程序是做不到了,揭开这个谜底还需要分析一下工程的Makefile。在这个时候对1.2.2小节第7条目进行个补充是非常合适的时机了,如果那时就解析这个问题无疑很难解析清楚并且容易对读者造成困惑,现在我们带着实际要解决的问题来看这个Makdile。可是我们工程的Makefile在哪里呢?重新开启个终端进入到useqtdialog工程路径下(/home/libin/project3/useqtdialog),在这个目录下打开Makefile.找到如下的地方: 170 compiler_moc_header_make_all:moc_cmydialog.cpp 171 compiler_moc_header_clean: 172 —$(DEL_FILE)moc_cmydialog.cpp 173 moc_cmydialog.cpp:cmydialog.h 174 /opt/QtSDK/Desktop/Qt/474/gcc/bin/moc $(DEFINES)$(INCPATH)cmyd:ialog.h—o Moc_cmydialog.cpp 看174行,用到了“/opt/QtSDK/Desktop/Qt/474/gcc/bin/moc”这个工具生成了一个moc—cmydial09.cpp的文件,这个文件名是由源码cmydial09.cpp前面加个moc前缀组成。moe(Meta Object Compiler)工具称为Qt的元对象编译器,就是它会读取源代码(如mydial09.cpp)。如果发现类声明里面有Q_OBJECT这个宏的声明,moc就会把Qt的信号与槽机制需要的相关代码(也称为元对象代码)加入到源码里面并重新生成一个C++源码(moc_cmydialog.cpp),把这个源码交给g++去编译和链接。

书籍目录

第1章Qt基础控件使用 1.1QtSDK环境搭建 1.1.1g++编译器安装 1.1.2QtSDK安装 1.2QtSDK环境初体验 1.2.1SDK目录结构解析 1.2.2用SDK编译出第一个运行在Linux下的软件界面 1.2.3体验QtCreator的神奇魅力 1.3QtGUI之对话框使用 1.3.1初识QDialog 1.3.2实现自己的对话框类 1.3.3Qt提供的标准对话框 1.4QtGUI之QWidget使用 第2章Qt事件驱动机制 2.1永具魅力的系统事件 2.1.1古老而常用的鼠标键盘事件 2.1.2从定时器事件开始谈谈其他的系统事件 2.2在特定需求下用户自定义的事件 2.3写一个歌词如卡拉OK般滚动的界面 第3章Qt编程两件套:多进程和多线程 3.1看Qt程序是怎样和其他进程打交道的 3.1.1利用QProcess让第三方应用程序为我所用 3.1.2execvp或system和无名管道搭档 3.1.3Qt中使用消息队列、共享内存等进程通信机制 3.2编写自己的音视频播放器 3.2.1MPlayerOpenSource的魅力无法阻挡 3.2.2通过Qt的界面操作来实现播控 3.2.3播放、停止、暂停、快进、快退等功能按钮 3.3让Qt的线程再run—会 3.3.1QThread让一切来得那么轻松 3.3.2铁打的临界区,流水的锁机制 3.4为手机编写出短信收发、电话拨打界面程序 3.4.1启动线程监听串口这个老朋友 3.4.2AT指令控制GSM模块工作 第4章QtWebKit高级编程技术 4.1第一次全景观看QtWebKit的类结构图 4.2QWebView让我们实现开发浏览器的梦想 4.3编写有特定要求的网站Web客户端程序 4.4QtWebKitBrowserJavaScript对象扩展技术 4.5QtWebKit插件扩展技术 4.5.1用Qt对象丰富网页内容 4.5.2Flash插件扩展技术 4.5.3QtWebKit—I—Gnash+Gstreamer的黄金组合 第5章Qt数据库编程和XML解析 5.1回顾soL语句 5.2数据库离嵌入式越来越近 5.2.1Qt的数据库引擎 5.2.2MySQL在Qt中的使用 5.2.3soLite在Qt中的使用 5.3嵌入式门禁系统界面设计 5.3.1和Wiegand协议过招 5.3.2添加、删除、检索门禁卡卡号 5.4QtXML解析 5.4.1QtXMLDOM接口使用 5.4.2QtXMLSAX接口使用 5.4.3QXml Stream Reader/QXmIStreamWriter接口使用 5.4.4实现天气时钟应用软件 参考文献

编辑推荐

《Linux Qt GUI开发详解:基于Nokia Qt SDK》适合于希望尽快入门Qt并尽快融入开发的初学者:也适合于希望积累Qt项目实践经验的一线开发工程师;还可以作为嵌入式培训机构及各大中专院校嵌入式相关专业的参考用书。

作者简介

《Linux Qt GUI开发详解:基于Nokia Qt SDK》详细介绍了Linux下Qt用户界面开发的重要的核心知识。全书共分为5章20节,涉及Qt基础控件的使用,开发工具的使用,信号与槽机制的探秘,GUI换肤和多国语言支持的实现,Qt事件驱动机制,多进程和多线程编程技术,Qt串口编程技术,Qt WebKit模块的高级编程技术,浏览器JavaScript对象扩展技术,QWebPlugin—Factory的使用,基于NPAPI标准的跨浏览器插件开发技术,MySQL和SQLife数据库在Qt中的应用及XML解析技术,QNetworkAccessManager及其相关类的使用等。《Linux Qt GUI开发详解:基于Nokia Qt SDK》在编写相关知识点时尽量通过例子来演示知识点的应用,尽量用通俗易懂的话来阐述知识点,每一章都会通过项目实例来强化读者对该章知识点的掌握和提高读者的实战水平及经验。


 Linux Qt GUI开发详解下载



发布书评

 
 


精彩短评 (总计1条)

  •     写出来Qt使用方面的一些独特的见解,
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024