如何关闭和删除无模式的 qt 对话框
Posted
技术标签:
【中文标题】如何关闭和删除无模式的 qt 对话框【英文标题】:How close and delete a modeless qt dialog 【发布时间】:2013-12-10 10:24:38 【问题描述】:我在一个类的方法中创建了一个无模式的 qdialog:
//Test.cpp
QDialogMaintenance *diag = new QDialogMaintenance(this);
diag->show();
diag->raise();
diag->activateWindow();
我只能通过单击对话框框架中的“X”图标来关闭对话框。如何删除 test.cpp 中的“诊断”实例?
【问题讨论】:
【参考方案1】:您可以使用QWidget::setAttribute 并设置Qt::WA_DeleteOnClose
属性。
Makes Qt delete this widget when the widget has accepted the close event (see QWidget::closeEvent()).
diag->setAttribute(Qt::WA_DeleteOnClose);
【讨论】:
以上是关于如何关闭和删除无模式的 qt 对话框的主要内容,如果未能解决你的问题,请参考以下文章