Qt开启本地事件循环(防止界面卡阻塞【卡死】)QEventLoop 的基本使用
生活随笔
收集整理的這篇文章主要介紹了
Qt开启本地事件循环(防止界面卡阻塞【卡死】)QEventLoop 的基本使用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
剛剛看別人的源碼,發(fā)現(xiàn)大佬都是這么玩的
當要使用延時,又不想卡死界面時,就開啟本地事件循環(huán);
官方給出的說明如下:
記得,上次我寫的那個狩獵者項目,用了一個記時器去判斷,low得一逼。
可以開一個本地事件循環(huán),1s拍一張照片。。
下面給出演示:
void Widget::on_pushButton_clicked() {//在10s后執(zhí)行某功能:Sleep(1000*10);runSomeFunction(); }void Widget::runSomeFunction() {qDebug()<<"runSomeFunction()"; }調(diào)用傳統(tǒng)的Sleep,這時候程序會阻塞。
開啟本地事件循環(huán),搭配QTimer的
達到想要的效果;
代碼如下:
總結(jié)
以上是生活随笔為你收集整理的Qt开启本地事件循环(防止界面卡阻塞【卡死】)QEventLoop 的基本使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt工作笔记-Qt文档阅读笔记-setM
- 下一篇: 认识死锁之死锁的基本概念