在QT中使用静态对象
2015-11-11 16:10
323 查看
最近做教研室的项目,需要只能存在一个接收数据的线程,那么我就想把这个线程设置成一个静态对象。但是在connect信号与槽的时候出了一点问题,最后搞好了,现在这mark一下:
比如说一个声明了一个静态的thread以及一个成员Thread的话:
那么初始化就应该使用这种方式:
在A的构造函数中Thread1与Thread2之间的槽连接应该采用下面这种方式:
大体上就是这样。。。
比如说一个声明了一个静态的thread以及一个成员Thread的话:
class A{ private: Thread1 * soSthThread; static Thread2 * recvThread; }; class Thread2 : public QThread{ signals: void recvFrame(unsigned int ); }; class Thread1 : public QThread{ public slots: void getFrame(unsigned int); };
那么初始化就应该使用这种方式:
Thread2 * A::recvThread(new Thread2());//注意这里不可以加上static,编译器已经知道这个Thread是static的了,无需再次声明
在A的构造函数中Thread1与Thread2之间的槽连接应该采用下面这种方式:
connect(A::recvThread, SIGNAL(recvFrame(unsigned int)), this, SLOT(getFrame(unsigned int)));
大体上就是这样。。。
相关文章推荐
- Qt下如何使用libuv
- Qt学习点滴积累
- QT位置相关函数
- 自学QT之底层因为接收到操作系统信号而停止的解决方案
- Qt Creator的下载、安装及试用
- QT主窗口QMainWindow
- VS调试Qt程序时查看变量显示地址值问题解决
- qt 中各种常用对话框
- QML Item详解
- Qt数据库sqlite总结
- Qt中提高sqlite的读写速度
- Qt 的sqlite数据库的学习
- Mobile Assistant
- Home Server
- Qt应用程序图标的个性化设置
- QTime获取当前时间,QDateTime获取日期和时间,QTimer定时器,QLCDNumber数码显示框
- QML属性汇总
- 安装Qt /嵌入式
- 安装Qt/X11
- 嵌入式ARM版本的Qt编译安装和移植过程