插槽功能正在运行时显示“请稍候...”框

时间:2012-03-10 16:54:13

标签: qt qt4

我的GUI中有一个插槽功能需要一些时间才能完成(10-15秒)。 我想灰色布局并显示一个"请等待......"当插槽功能完成时,它将消失。

我需要它是异步的,因为我想在&#34中使用QProgressBar小部件;请稍候......"窗口。

如何做到这一点?

1 个答案:

答案 0 :(得分:10)

您的长时间运行的插槽应该在QThread中运行,而您的“请稍候...”小部件应该在主GUI线程中是模态的。

您可以使用适合您的显示需求的QProgressDialogchoose a windowflag,也可以使用自定义小部件。但是长时间运行的操作应该在模态阻塞对话框完成时发出信号,导致对话框隐藏。