c++ - 主对话框关闭后关闭对话框

标签 c++ qt5

我有一个带有一些按钮的主对话框。每个按钮都会生成一个独立的对话框如下:

void MainDialog::onAButtonClicked()
{
     Dialog *dial = new Dialog(pass some parameters);
     dial->show();
}

这种方法的问题是当用户关闭主对话框时,正在运行的独立对话框并没有关闭。我不希望出现这个问题。一些解决方案建议覆盖 closeEventreject,我已经尝试过了,但是这些需要我创建 *dial 作为 Main Dialog 的成员数据.这可行,但我不想要这种方法,因为我需要在用户完全关闭窗口后删除此对话框。我尝试使用 new 分配一些内存并在 closereject 事件上删除对象,但应用程序挂起。解决这个问题的正确方法是什么?

最佳答案

connect(this,SIGNAL(finished(int)),dial,SLOT(close()));

connect(this,SIGNAL(rejected()),dial,SLOT(close()));

关于c++ - 主对话框关闭后关闭对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44481901/

相关文章:

c++ - 在 C++11 中使用基于范围的 for 循环替换传统的嵌套循环

c++ - 如何声明库和应用程序之间共享的类

qml - 如何用鼠标选择文本编辑区域

c++ - QT中如何加入url

c++ - 如何在QWebEngineView中保存动态生成的网页?

c++ - Flex/Bison 评估不正确

java - 通过网络从 C++ 客户端向 Java 服务器发送字符串

C++接口(interface)继承不同参数的方法

c++ - QTextToSpeech 设置默认 QLocale

c++ - Qt Pushbutton 必须在延迟后处理信号