qt定时器限制定时次数

qt定时器限制定时次数,第1张

使用QTimer::setInterval()和QTimer::start()函数可以实现定时器的限制定时次数,具体步骤如下:

1. 定义一个计数器,用于记录定时器的执行次数;消弯

2. 创建QTimer对象,并设置定时器的时间间隔冲团;

3. 将计数器与QTimer对象连接,在定时器超时时,计数器加1;

4. 在定时器超时时,判断计数器是否达到限定次数,如果达到,则停止定拿判闷时器,否则继续执行定时器;

5. 最后调用QTimer::start()函数,开始定时器的计时。

在windows下互斥体有个唯一的key,通过key去创建互斥体,如果这巧腔薯个互斥体已经存在了,那么通过GetLastError能获取到这个信息,表示程序已经在运行了。互斥体还有个优点圆裤就是在程序关闭时孝者,会自动释放掉!

#include "mainwindow.h"

#include <QApplication>

#include <windows.h>

int main(int argc, char *argv[]){

QApplication a(argc, argv)

QString strKey = "mykey"

LPCWSTR wstrKey = strKey.toStdWString().c_str()

HANDLE hMetex = CreateMutex(NULL,FALSE,wstrKey)

if(GetLastError() == ERROR_ALREADY_EXISTS){

//如果互斥体存在,说明程序已经有实例在运行了,释放资源然后关闭本实例

if(hMetex){

CloseHandle(hMetex)

hMetex = NULL

}

return -1

}

MainWindow w

w.show()

return a.exec()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12269406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存