![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
qt
vmp_jin
这个作者很懒,什么都没留下…
展开
-
在不开启事件循环的线程中使用QTimer
QTimer是Qt自带的定时器类,QTimer运行时是依赖于事件循环的,简单来说,在一个不开启事件循环(未调用exec() )的线程中,QTimer是无法使用的。通过分析Qt源码可发现,调用QTimer::start()后仅仅是在系统的定时器向量表中添加了一个定时器对象,但定时器并没有真正开启。定时器的开启需要通过processEvent()开始的一系列调用后才会真正得开启,这个过程中会处理定时器转载 2015-04-11 16:31:18 · 607 阅读 · 0 评论 -
qt中定时器的使用
在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器;一种是使用QTimer类。 定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度。 ■、QObject类的定时器 QObject是所有Qt对象的基类,它提供了一个基本的定时器。通过QObject::startTimer(),可以把一个一毫秒为单位的时间间隔作为参数来开始定时器,这个函数返回一个唯一的整数定时器转载 2015-04-11 17:15:07 · 517 阅读 · 0 评论 -
Qt多线程间信号槽传递非QObject类型对象的参数
遇到:QObject::connect: Cannot queue arguments of type 'XXXXX',之类的错误。原因是使用排队方式的信号-槽机制,Qt的元对象系统(meta-object system)必须知道信号传递的参数类型 解决方法有两种: 一、把自己定义的类型注册为元组类型,使用qRegisterMetaType()注册,可以把这个函数放在connect()函数转载 2015-04-19 06:26:32 · 519 阅读 · 0 评论 -
Qt程序的UAC权限问题(转载)
如果你的程序跑在一个开启了UAC保护的系统中,而你的程序又没有"盾牌"的话,程序总是会受到各种阻挠的,比如读写文件,写注册表等。 有了"盾牌"的话就不会出现一些莫名其妙的问题了。 打开文件 "mkspecs\win32-msvc2012\qmake.conf"。注意,我这里用的是VC2012,所以文件夹是win32-msvc2012,根据自己的编译器选择对应的目录 找转载 2015-06-24 17:01:47 · 622 阅读 · 0 评论