主GUI线程在等待QFuture时更新QProgressDialog的正确方法是什么.具体来说,这个循环中的内容:
QProgressDialog pd(...);
QFuture f = ...;
while (!f.isFinished()) {
pd.setValue(f.progressValue());
// what goes here?
}
Run Code Online (Sandbox Code Playgroud)
现在我有一个sleep()就像在那里调用,但这不是最佳的(并且当然会引入一些GUI延迟).
如果我什么也没放,主线程将循环极点pd.setValue(),浪费CPU周期.
我希望放置像QCoreApplication :: processEvents(flags,maxtime)这样的东西,但如果事件队列为空则立即返回.我想要一个等待maxtime或者即使队列为空的版本.这样,我得到了延迟,主线程随时准备响应GUI事件.
有没有办法可以让VTK让Y轴下降(增加值时)而不是上升?
我希望我的VTK窗口能够匹配我的非VTK窗口来显示数据,这些数据都是Y轴下降的.