我有一个使用 20 个不同类的应用程序。程序执行在主窗口中开始。我开始一个进度对话框。我会为不同的目的使用不同的类。在执行到特定类并执行所需并返回主窗口类的每个函数调用之后,我将更新进度对话框。现在,问题是当执行离开主窗口类时进度对话框冻结。无法访问取消按钮,因此无法在所需时间停止执行。
主类::主类() {
ProgressDialog->exec();
x->add();
updateProgressDialog();
y->do();
updateProgressDialog();
zz->bring();
updateProgressDialog();
}
// x, y, z 是三个不同的类。
这就是执行的方式。一旦我在主类中输入函数,我将启动进度对话框。并调用不同类的函数。这些功能需要相当长的时间。我已经调用了一个线程来执行执行部分,但我无法取消进度对话框。我希望在进度对话框上按下取消按钮时停止程序执行。
请让我知道如何摆脱这个问题。希望我在这里很清楚。