QT
文章平均质量分 86
林中静月下仙
我们注定会变成另一个人、
展开
-
第53篇 Qt Quick项目详解
在Qt中提供了两个运行QML文件的工具qmlviewer和qmlscene,前者是Qt 4时代的产物,主要用来显示导入了QtQuick 1.1模块的QML文件,而qmlscene用来显示导入了QtQuick 2.0以后版本的QML文件。本节内容让大家可以从根本上掌握Qt Quick程序的构建,并且也提供了一种学习的方法,一种分析大型复杂程序的方法,就是所谓的剖析法,希望大家用心过一遍,为以后的学习打好基础。文件的内容,从最简单的程序开始,逐渐丰富代码,现在大家应该已经对QML程序有了一定的认识。原创 2022-12-13 14:49:00 · 2226 阅读 · 0 评论 -
第52篇 Qt Quick简介
所以,实际中设计器用的并不多。学习Qt,最标准的教程就是帮助文档,最规范的程序就是示例程序,而且如何开始学习,Qt文档中都给了入口,比如要学习QML语言,这里可以点击“First Steps with QML”链接,而要在Qt Creator中开发Qt Quick程序,可以参考“Creating Qt Quick Projects in Qt Creator”链接,如下图所示,本篇后面的内容就是按照这些文档来的。因为Qt Quick是Qt新引入的一个东东,所以要了解它,最好的方式就是查看Qt的官方文档。原创 2022-12-13 14:46:02 · 1735 阅读 · 3 评论 -
第51篇 Qt 5.5全新的开始
在写这本书的同时,想了很多,也有很多好的东西想和大家分享,但是还是因为精力有限......再比如说为《Qt Creator快速入门》编写了实验讲义和PPT课件,完成这个的时候,我对该书第三版已经有了大致的思路,也本想早早和大家探讨,但还是因为精力有限......再有就是和天嵌科技合作的嵌入式教程,这个也是和hzzhou合作的教程,年初的时候用三个月跟hzzhou合作开发了一个小项目,这次再次合作,将探索Linux嵌入式编程教程的编写。时间转眼而逝,看一下上次发的教程,已经是一年前的事情了。原创 2022-12-13 14:45:31 · 1720 阅读 · 0 评论 -
从Qt 4到Qt 5(二)Qt 5框架介绍
从Qt 4到Qt 5,整个框架进行了优化调整,目的就是为了达到更好的性能和以后进一步地扩展。可以发现,OpenGL和WebKit在整个框架中占有举足轻重的地位,不过在不远将来的Qt 5.3,Chromium将代替WebKit成为Qt的Web引擎,因为Chromium提供了更好的跨平台性和其他一些易用性。原创 2022-12-13 14:44:03 · 602 阅读 · 0 评论 -
从Qt 4到Qt 5(一)Qt 5.2安装、程序迁移和发布
对于大部分Qt 4程序而言,Qt 5没有太大的改变,不过在升级移植的过程中还是会发现很多细节改动的。这一节我们讲述了Qt 5.2版的安装、设置,然后讲述了怎样将一个Qt 4程序使用Qt 5进行编译运行,最后还讲述了Qt 5程序的发布。在下一节我们将会讲解Qt 5的整个框架,让大家更加清楚Qt 5中改变了哪些模块,增加和删除了哪些模块。原创 2022-12-13 14:43:41 · 892 阅读 · 0 评论 -
第49篇 进阶(九) 多媒体应用简介
Movie类是一个使用来播放动画的便捷类。该类用来显示没有声音的简单动画,主要支持GIF和MNG格式的文件;在Qt 4.6中新加入了模块来提供一些底层的多媒体功能,比如音频的采集和回放、频谱分析、操作视频帧等。关于这两个类的使用,可以参考《Qt Creator 快速入门》的第13章,进一步学习Phonon的内容,可以参考第14章。原创 2022-12-13 14:42:14 · 209 阅读 · 0 评论 -
第48篇 进阶(八) 3D绘图简介
这一节只是向大家简单演示了如何在Qt中进行openGL编程来实现3D绘图,目的只是让大家看到在Qt中进行3D绘图是非常简单的。如果想进一步应实现更炫酷的效果,就需要拥有openGL的专业知识了。原创 2022-12-13 14:42:00 · 460 阅读 · 0 评论 -
第47篇 进阶(七) 定制Qt帮助系统
使用Qt定制帮助系统,可以制作功能强大的上下文相关的帮助文档,而对于一个优秀的软件而言,帮助菜单是必须有的。原创 2022-12-13 14:41:03 · 843 阅读 · 1 评论 -
第46篇 进阶(六) 国际化
这一节简单介绍了一个使用Qt语言家实现国际化的例子,可以看到翻译一个程序其实是很简单的。Qt中还可以设置自动判断语言环境、动态进行语言更改等功能,详细内容可以参考帮助文档Internationalizationwith Qt或者参考《Qt Creator快速入门》第9章的相关内容。原创 2022-12-13 14:40:27 · 406 阅读 · 0 评论 -
第45篇 进阶(五)Qt样式表
要想为软件设计一个漂亮的界面,需要灵活使用Qt样式表,不过这需要一定的CSS功底,还需要有美工经验。这一节只是简单介绍了下Qt中样式表的应用,只为抛砖引玉。大家也可以参考《QtCreator快速入门》第8章的相关内容,里面还涉及到了换肤、透明窗体、不规矩窗体等内容。原创 2022-12-13 14:40:06 · 1854 阅读 · 0 评论 -
第44篇 进阶(四)信号和槽
虽然信号和槽机制提供了高度的灵活性,但就其性能而言,还是慢于回调机制的。当然,这点性能差异通常在一个应用程序中是很难体现出来的。原创 2022-12-13 14:39:29 · 204 阅读 · 0 评论 -
第43篇 进阶(三)对象树与拥有权
Qt中的对象树很好地解决了父子部件的关系,对于Gui编程是十分方便的,在创建部件时我们只需要关注它的父部件,这样就不用再考虑其销毁问题了。下一节,我们将讲解Qt中的信号和槽的内容。原创 2022-12-13 14:38:56 · 122 阅读 · 0 评论 -
第40篇 网络(十)WebKit初识
WebKit是一个很庞大的体系,我们这里只是讲解了其最基本的应用,有兴趣的朋友可以结合Qt文档来进一步的学习。原创 2022-12-13 14:36:59 · 543 阅读 · 0 评论 -
第39篇 网络(九)进程和线程
最后要注意的是,使用线程是很容易出现问题的,比如无法在主线程以外的线程中使用GUI类的问题(可以简单的通过这样的方式来解决:将一些非常耗时的操作放在一个单独的工作线程中来进行,等该工作线程完成后将结果返回给主线程,最后由主线程将结果显示到屏幕上)。大家应该谨慎的使用线程。原创 2022-12-13 14:36:34 · 250 阅读 · 0 评论 -
第38篇 网络(八)TCP(二)
在这两节里我们介绍了TCP的应用,可以看到服务器端和客户度端都可以当做发送端或者接收端,而且数据的发送与接收只要使用相对应的协议即可,它是可以根据用户的需要来进行编程的,没有固定的格式。《Qt及Qt Quick开发实战精解》中的局域网聊天工具就是本节知识的扩展,大家可以从社区下载页面下载其源码。原创 2022-12-13 14:35:14 · 250 阅读 · 0 评论 -
第37篇 网络(七)TCP(一)
到这里我们最简单的TCP应用程序就完成了,在下一节我们将会对它进行扩展,实现任意文件的传输。原创 2022-12-13 14:33:29 · 351 阅读 · 0 评论 -
第36篇 网络(六)UDP
可以看到,UDP的应用是很简单的。我们只需要在发送端执行函数进行数据报的发送,然后在接收端绑定端口,并关联信号和数据报处理函数即可。下一节我们讲述TCP的应用。原创 2022-12-13 14:31:18 · 314 阅读 · 0 评论 -
第35篇 网络(五)获取本机网络信息
在这一节中我们学习了如何来查找本机网络设备的相关信息。其实,以后最常用的还是其中获取IP地址的方法。QString Widget::getIP() //获取ip地址{{//我们使用IPv4地址}return 0;}这一节就讲到这里,在下面的几节中我们将利用IP地址进行UDP和TCP的编程。原创 2022-12-13 14:30:46 · 397 阅读 · 0 评论 -
第34篇 网络(四)FTP(二)
最后需要说明的是,因为为了更好的讲解知识,使得程序简单化,所以我们省去了很多细节上的处理,如果需要,你可以自己添加。比如断开连接和取消下载,你都可以使用函数。你也可以参考Qt自带的Ftp Example例子。对于其他操作,比如上传等,你可以根据需要添加。FTP的相关编程就讲到到这里。原创 2022-12-13 14:30:05 · 316 阅读 · 1 评论 -
第33篇 网络(三)FTP(一)
在下一节中,我们将会对这个程序进行扩展,让它可以浏览服务器上的所有文件,并进行下载。原创 2022-12-13 14:29:05 · 484 阅读 · 0 评论 -
第32篇 网络(二)HTTP
HTTP应用的内容就讲到这里,可以看到它是很容易的,也不需要大家了解太多的HTTP的原理知识。关于相关的类的其他使用,也可以查看其帮助文档。在上面的例子中,我们只是为了讲解知识,所以程序不是很完善,对于一个真正的工程,还是需要注意更多其他细节的,大家可以查看一下Qt演示程序HTTP Client的源代码。原创 2022-12-13 14:28:33 · 158 阅读 · 0 评论 -
第31篇 网络(一)Qt网络编程简介
后面的教程中我们将对Qt网络编程部分的知识点分别进行讲解,对Qt中网络编程内容有了初步了解以后,我们就开始下一步的学习吧。原创 2022-12-13 14:27:11 · 173 阅读 · 0 评论 -
第30篇 XML(四)使用流读写XML
数据库和XML在很多程序中都经常用到,它们的使用也总是和数据的显示联系起来,所以学习好数据库的知识也是很重要的,它们可以说是密不可分的。相关内容,大家也可以参考《Qt Creator快速入门》的相关章节以及《Qt 及Qt Quick开发实战精解》的数据管理系统的例子,里面同时应用了数据库和XML。原创 2022-11-07 10:26:57 · 215 阅读 · 0 评论 -
第29篇 XML(三)Qt中的SAX
可以看到使用SAX方法来解析XML文档比使用DOM方法要清晰很多,更重要的是它的效率要高很多,不过SAX方法只适用于读取XML文档。原创 2022-11-07 10:26:22 · 183 阅读 · 0 评论 -
第28篇 XML(二)使用DOM创建和操作XML文档
通过本节的例子可以看到使用DOM可以很方便的进行XML文档的随机访问,这也是它最大的优点。关于更多更详细的内容可以参考《Qt Creator快速入门》的相关章节。原创 2022-11-07 10:25:48 · 270 阅读 · 0 评论 -
第27篇 XML(一)使用DOM读取XML文档
通过上面的例子,我们实现了对一个XML文档的读取。可以看到,在QDom中,是将整个XML文件读到内存中的doc对象中的。然后使用节点(QDomNode)操作doc对象,像XML说明,元素,属性,文本等等都被看做是节点,这样就使得操作XML文档变得很简单,我们只需通过转换函数将节点转换成相应的类型,如在下一节我们将讲述XML文件的创建和写入。原创 2022-11-07 10:25:10 · 320 阅读 · 0 评论 -
第26篇 数据库(六)SQL关系表格模型QSqlRelationalTableModel
我们可以根据自己的需要来选择使用哪个模型。如果熟悉SQL语法,又不需要将所有的数据都显示出来,那么只需要使用QSqlQuery就可以了。对于,它主要是用来显示一个单独的表格的,而可以用来显示任意一个结果集,如果想显示任意一个结果集,而且想使其可读写,那么建议子类化,然后重新实现flags()和setData()函数。更多相关内容请查看《Qt Creator快速入门》第17章。原创 2022-11-07 10:22:45 · 194 阅读 · 0 评论 -
第25篇 数据库(五)SQL表格模型QSqlTableModel
可以看到这个模型很强大,而且完全脱离了SQL语句,就算你不怎么懂数据库知识,也可以利用它进行大部分常用的操作。我们也看到了,这个模型提供了缓冲区,可以先将修改保存起来,当我们执行提交函数时,再去真正地修改数据库。当然,这个模型比前面的模型更高级,前面讲的所有操作,在这里都能执行。原创 2022-11-07 10:21:59 · 507 阅读 · 0 评论 -
第24篇 数据库(四)SQL查询模型QSqlQueryModel
本节讲解了的相关内容,该类默认是一个只读的SQL语句查询模型,不过可以对其进行重写来实现编辑功能。下一节我们将讲解封装更好的模型,它已经基本上摆脱了SQL语句。原创 2022-11-07 10:20:55 · 478 阅读 · 0 评论 -
第23篇 数据库(三)利用QSqlQuery类执行SQL语句
对执行SQL语句我们就介绍这么多,其实Qt中提供了更为简单的不需要SQL语句就可以操作数据库的方法,我们在下一节讲述这些内容。原创 2022-11-07 10:20:11 · 1638 阅读 · 0 评论 -
第22篇 数据库(二)编译MySQL数据库驱动
在Qt中编译MySQL数据库驱动的内容到这里就介绍完了。从下一篇开始,我们将以SQLite数据库为范例来讲解Qt数据库部分的应用。原创 2022-11-07 10:18:39 · 361 阅读 · 0 评论 -
第21篇 数据库(一)Qt数据库应用简介
本节简单介绍了一下Qt中数据库相关的内容,可以看到,现在Qt支持的数据库仅有两类。如何才能让Qt支持其他的数据库呢,下一节,我们将以现在广为使用的MySql为例,讲解数据库驱动的编译。如果大家想系统的学习Qt数据库部分内容,可以参考《Qt Creator快速入门》的第17章。原创 2022-11-07 10:17:46 · 376 阅读 · 0 评论 -
第20篇 2D绘图(十)图形视图框架(下)
图形视图框架是一个非常强大而且庞杂的系统,我们教程中也只是很笼统的介绍了一些最基本最常用的内容。如果大家想系统学习该部分知识,想学习如何使用该框架轻松搭建一个游戏,可以参考《Qt Creator快速入门》的第11章,以及《Qt 及Qt Quick开发实战精解》的第二章。原创 2022-11-04 09:40:58 · 392 阅读 · 0 评论 -
第19篇 2D绘图(九)图形视图框架(上)
这一节先介绍了图形项的相关内容,而场景、视图等内容放到下一节来讲。原创 2022-11-04 09:40:08 · 365 阅读 · 0 评论 -
第18篇 2D绘图(八)双缓冲绘图
对于Qt基本绘图的内容,我们就讲到这里,如果大家还想更加系统深入的学习这些基础知识,可以参考《Qt Creator快速入门》的第10章。从下一节开始,我们将简单介绍一下Qt中得图形视图框架。原创 2022-11-04 09:36:17 · 273 阅读 · 0 评论 -
第17篇 2D绘图(七)涂鸦板
本节讲到的涂鸦板,只是为了实践前面的知识,起到抛砖引玉的作用。大家可以根据自己的理解继续探究下去。在下一节,我们将讲解怎样在涂鸦板上绘制出矩形、椭圆等图形。本程序中存在一些问题,如果大家想进一步学习研究,可以参考下载页面的涂鸦板开源软件。原创 2022-11-04 09:35:32 · 279 阅读 · 0 评论 -
第16篇 2D绘图(六)坐标系统
在这一节中我们讲述了坐标相关的多个知识点,经过本节的学习,大家应该已经对Qt的2D绘图有了一个浅显的认识,下一节我们将做一个比较实用的涂鸦板例子。Qt的坐标系统是很有必要好好研究的,它对深入学习应用Qt绘图很有帮助。如果大家想更系统的学习Qt坐标系统,可以参考《Qt Creator快速入门》的第10章相关内容。原创 2022-11-04 09:34:54 · 450 阅读 · 0 评论 -
第15篇 2D绘图(五)绘制图片
这一节中只讲解了QPixmap类的简单应用。对于后面讲到的图片变形的应用,细心的读者可能已经发现了,旋转了坐标系统以后再绘制图片都是纵向的,这就是因为旋转了坐标系统而没有进行恢复造成的。具体的坐标操作我们会在下一节讲解。原创 2022-11-04 09:33:37 · 505 阅读 · 0 评论 -
第14篇 2D绘图(四)绘制路径
这里只讲解了最基本的应用,使用好这个类可以绘制出很多特效图形。如果绘制的两个图形有交集,那么还要涉及到相交部分的填充规则问题,这部分内容可以参考《Qt Creator快速入门》第10章的相关内容。原创 2022-11-04 09:32:51 · 205 阅读 · 0 评论 -
第13篇 2D绘图(三)绘制文字
这一节最后的例子中使用了rotate()函数来旋转坐标系统,从而绘制出了纵向的文字。这个将会在后面的篇章中介绍到。原创 2022-11-04 09:32:15 · 398 阅读 · 0 评论