qt中如何让代码等待接收信号
How to make the code wait for receiving a signal in qt
我有一个 gui
class 和另一个名为 guiThread
的 class。 gui
class 作为线程启动 guiThread
,借助信号和插槽与 gui
通信。
我在 guiThread
中有一个名为 doAction()
的插槽,我有一个从 gui
class 发送到此插槽的信号。
所以我想在 guiThread
中做的是我想做一个 while 循环,等待信号从 gui
发送到 doAction()
插槽,当它收到信号时,插槽做一些计算。
我不知道如何在 while 循环中执行此操作,我什至不知道我想要的是否可行。如果有人能帮助我,我将不胜感激。
你需要初始化一个私有布尔值block=true
,然后你等待while(block);
的信号。每当您收到信号时,您都会在相应的插槽中进行计算,并在其末尾更新 block=false
。这样,当代码returns到while时,就会传过去继续处理。
我有一个 gui
class 和另一个名为 guiThread
的 class。 gui
class 作为线程启动 guiThread
,借助信号和插槽与 gui
通信。
我在 guiThread
中有一个名为 doAction()
的插槽,我有一个从 gui
class 发送到此插槽的信号。
所以我想在 guiThread
中做的是我想做一个 while 循环,等待信号从 gui
发送到 doAction()
插槽,当它收到信号时,插槽做一些计算。
我不知道如何在 while 循环中执行此操作,我什至不知道我想要的是否可行。如果有人能帮助我,我将不胜感激。
你需要初始化一个私有布尔值block=true
,然后你等待while(block);
的信号。每当您收到信号时,您都会在相应的插槽中进行计算,并在其末尾更新 block=false
。这样,当代码returns到while时,就会传过去继续处理。