首页| 论坛| 消息

标题:QT 不支持线程的 pause ,resume啊!
作者:cyberpunker
日期:2016-08-12 21:15
内容:

工作线程使用Qthread启动的,但都是用C++写的,里边有地方用了MFC messagebox,弹出后,线程阻塞,等用户进行选择后获取选择的结果继续运行,
但现在要把线程里界面相关的全部清除,要把这个对话框替换成QT的(但还是得是纯C++的),相当于要给QT GUI发送消息,然后又要从QT GUI返回数据,在这个过程中,线程不能继续运行。
现在的问题是:Qmessagebox不能用在非GUI线程。 如果要通过信号的方式通知GUI的话,又不能阻塞线程。
是不是只能显示的pause线程->弹出对话框->获取结果->resume线程这一个办法了?


#1 [songvsclou 08-13 16:08]
用QEventLoop
#2 [cyberpunker 08-14 19:49]
搞定, 用信号的第五个参数, 跨线程的那个!

回复 发表
主题 版块