yan*_*nce 12 user-interface qt
我有一个从两个QThreads
主线程调用的方法.这个方法有时需要花费很长时间才能在循环中进行计算,所以我放了QCoreApplication::processEvents()
这个就可以防止GUI冻结.在某些时候我已经改变QCoreApplication::processEvents()
了QApplication::processEvents()
但是这导致GUI冻结(我非常确定那是什么令人惊叹它因为我QCoreApplication::processEvents()
放回它还没有再次冻结)我是正确的认为QApplication::processEvents()
从主线程和QThreads调用可以冻结GUI?
Kal*_*son 11
将长时间运行的进程移出主线程会更好,所以你不需要调用processEvents()
.在这个长时间运行的过程中,你可以发出你需要的任何信号,这样gui就有足够的信息来做更新等等 processEvents
,但是,这通常是一个糟糕设计的拐杖.