我在一个pushbutton中的槽函数中 有用QProcess 调用linux下的终端
这个QProcess可能要持续好几秒 如果期间再点击按钮 就可能出错
所以我想在按按钮的时候disable掉 等槽函数运行完毕后 再enable
可是如果我在开头写上
ui->pushButton_ccd->setEnabled(false);
在末尾写上
ui->pushButton_ccd->setEnabled(true);
这样是不行的 QProcess运行中按钮还是可以按
请问我该怎么做?要用QEventLoop::ExcludeUserInputEvents 么? 但是这个我看帮助文档上写的太简略……没看明白……
C QPushbutton
------解决方案--------------------
这样没有用的,QProcess是异步的,调用完立即返回,和被调用的程序状态无关。
写一个槽和这个信号connect,void QProcess::finished(int exitCode, QProcess::ExitStatus exitStatus) [signal]在这个槽里给button解锁。