QDialog 如何显示的时候不退出
时间: 2023-08-14 19:06:17 浏览: 224
在弹出对话框的同时保持页面的显示
要使QDialog在显示时不退出,您可以使用`exec()`函数而不是`show()`函数来显示对话框。
`exec()`函数是一个模态对话框函数,它会阻塞当前线程,直到对话框关闭为止。这意味着在调用`exec()`函数之后,程序将等待对话框关闭后才会继续执行后续代码。
以下是一个示例代码:
```cpp
// 创建QDialog对象
QDialog* dialog = new QDialog(parent);
// ... 设置对话框内容 ...
// 显示对话框并等待对话框关闭
int result = dialog->exec();
// 根据对话框返回值执行相应操作
if (result == QDialog::Accepted) {
// 用户点击了“确定”按钮
// 执行相应操作
} else if (result == QDialog::Rejected) {
// 用户点击了“取消”按钮或关闭了对话框
// 执行相应操作
}
// 后续代码...
```
通过使用`exec()`函数,您可以在对话框显示时保持程序的执行状态,并在对话框关闭后根据返回值执行相应的操作。这样,对话框将在不退出的情况下显示,并且您可以控制后续代码的执行。
阅读全文