![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
QT
ZHDragonD
取法乎上
展开
-
ubuntu创建第一个Qt程序的总结
昨天安装好Qt后,很简单的就创建了一个Qt程序。下班的时候,Ubuntu更新,我就没等他更新完就出去了。第二天过来,发现Ubuntu启动不了了,重启几次也没有用。没办法,之后把之前的快照打开,由于快照还是很纯净的时候保留的,所以什么插件都没有安装。Ubuntu可以正常启动后,第一件事就是从新下载安装Qt,安装后,创建一个程序,出现以下问题:是的,没有合适的编译器(g++),一开始以为安装Qt这些是安装的,查了一下发现没有没办法,只好安装了。安装完成后,Qt会自动加载这些编译.原创 2021-04-09 11:06:58 · 265 阅读 · 0 评论 -
在ubuntu上安装qt
1.上网下载Q't原创 2021-04-09 08:49:26 · 1729 阅读 · 0 评论 -
Qt插件应用
对于一个大型软件系统来说,实现plugin是一件很美妙的事情,一个成功的plugin系统可以使软件增色不少。Plugin最大的功能是在一定程度内提高了软件的灵活度和可扩展性。一种是高等级的plugin。其实说白了就是已经确定interface的Qt本身的plugin;另一种是低等级的plugin。就是该plugin的interface也需要程序员自己编写从编程的角度,重点还是OOP。所谓的plugin,其实就是一些按照特定interface写成的子类。该Interface必须是虚基类,且所有函数(除原创 2021-02-20 17:35:03 · 197 阅读 · 0 评论 -
QT 多线程使用moveToThread开启,暂停的问题
在使用moveToThread创建线程时,开启和暂停的工作都在具体的QObject类完成,一般通过信号槽调用来开启和暂停函数;如果使用一般方法连接信号槽,如下:这样会出现开启了线程,暂停不了的情况,原因可能是,资源被线程占用,暂停信号没有到达不了槽函数;我们可以使用Lambda:相当于接收到信号,越过了槽,直接调用暂停函数;工作类:具体的工作内容UI类:创建,控制,暂停线程...原创 2020-12-24 18:03:02 · 1739 阅读 · 2 评论 -
C++ Lambda与connect
Lambda简介:c11新特性中加入了lambda表达式,所以Qt5.0 也支持,需在.pro文件中加入 CONFIG+=c++11;Lambda函数也就是一个函数,它的语法定义如下:[capture](parameters) mutable ->return-type{statement}1.[capture]:捕捉列表。捕捉列表总是出现在Lambda函数的开始处。实际上,[]是Lambda引出符。编译器根据该引出符判断接下来的代码是否是Lambda函数。捕捉列表能够捕捉上...原创 2020-12-24 14:53:12 · 778 阅读 · 0 评论 -
QT编译报错汇总
LNK2019:无法找到外部符号, LNK1120:无法解释的外部命令。这些报错原因各异,以下是各种问题的原因,及解决方法。1,输出类不是共享类。一般只要在头文件加上共享标识即可。2,引用类和输出类在不同的子项目,即使输出类是共享了,也有可能报错。只要将输出类的生成路径和引用类的生成路径改成同一路径下,然后在引用类中,引用的是同一路径下的文件。最好将所有输出文件都统一到一个文件夹,方便管理,也避免错误发生无从下手。路径,路径还是路径.........................原创 2020-07-16 14:25:41 · 809 阅读 · 0 评论 -
自定义类往往需要添加一些头文件
编译出错:添加了:#include <QString>报错消失总结:往往自定义类会缺少一些头文件,在自定义类中,使用相关类,需要添加对应的头文件。原创 2020-06-03 17:52:11 · 333 阅读 · 0 评论 -
QT信号槽一点小知识
编译报错:云里雾里,一时间不知道什么问题,重新清除,qmake,构建还是不行,检查头文件和继承也没问题,都属于QObject(要使用信号槽机制,必须是QObject子类)。怎么办?????加上Q_OBJECT,之后编译通过...............................论基础的重要性!!!!...原创 2020-05-28 11:42:26 · 141 阅读 · 0 评论 -
QT利用宏自动创建get/set代码
//利用宏定义//创建具体函数,省去大量代码//数据保存还是很麻烦,还是要一条一条保存//通过对象调用函数原创 2020-04-05 11:27:05 · 961 阅读 · 0 评论 -
如何将类声明为元对象类???
原创 2019-11-29 15:49:19 · 146 阅读 · 0 评论 -
利用QT的反射机制的一种实际模式
最近学习了反射机制的使用方法,网上也有很多这方面的介绍,但初次看起来还是很难了解,不够清晰。经过几天的深入学习,我把我的理解写出来,可能理解有不全对,仅供参考。什么是反射机制?反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为反射机制为什么使用反射?通过使用字符串,...原创 2019-11-18 17:47:26 · 461 阅读 · 0 评论 -
QT开发笔记-----杂
1. 对于规范的Qt程序,我们要在main()函数中将主窗口部件创建在栈上,例如“Widget w;”,而不要在堆上进行创建(使用new操作符)。对于其他窗口部件,可以使用new操作符在堆上进行创建,不过一定要指定其父部件,这样就不用使用delete操作符来销毁该对象了。 2.信号和槽机制是Qt的核心内容,而信号和槽机制必须依赖于元对象系统,所以它...原创 2019-11-12 16:35:30 · 170 阅读 · 0 评论 -
QT+PMAC联合开发
最近接触到PMAC的IMAC—FX控制器,虽然他的主程序是写在下位机,但还是需要上位机和它进行通信和交互。官方提供的上位机DEMO都是基于VC,C#,和VB等。对于QT的用户,没有很直接的代码供参考。 PMAC提供了COM组件,供上位机调用.在QT中使用com组件,需要使用QT提供的Dumpcpp.exe工具将PMAC提供PCommServer.exe文件生成.h和.cpp文件。...原创 2019-09-30 10:51:31 · 1043 阅读 · 4 评论 -
QT多线程
在Qt中,有两种多线程方法,分别是:1.自定义类继承QThread类,重载run方法;2.自定义类继承QObject类。在另一个开启线程类中,声明自定义类和QThread对象。用MoveToThread函数将自定义类转移到线程中。通过信号连接自定义类的槽函数,并通过信号触发槽函数。(槽函数在子线程中执行)。QT官方推荐使用第二种方法:以下为第二种方法的实例:...原创 2019-09-30 16:00:29 · 207 阅读 · 0 评论