0
我用下面的命令來創建和顯示一個窗口:如何刪除窗口?
QGCSettingsWidget* settings = new QGCSettingsWidget(this);//here this means the mainwindow
settings->show();
的構造是這樣的:
QGCSettingsWidget::QGCSettingsWidget(QWidget *parent, Qt::WindowFlags flags) :
QDialog(parent, flags),
mainWindow((MainWindow*)parent),
ui(new Ui::QGCSettingsWidget)
{
ui->setupUi(this);
....
MAVLinkSettingsWidget* msettings = new MAVLinkSettingsWidget(mavlink, this);//set its parent to be this.
}
的解構是:
QGCSettingsWidget::~QGCSettingsWidget()
{
delete ui;
}
然而,我發現,當我點擊創建窗口的關閉按鈕。儘管窗口消失了,但是這些窗口不會被破壞。 我怎樣才能讓它正確刪除?
是'msettings'聲明爲'QGCSettingsWidget'類的成員? – rhodysurf 2014-11-24 14:54:32
這裏是[MAVLinkSettingsWidget](https://github.com/diydrones/apm_planner/blob/master/src/ui/MAVLinkSettingsWidget.cc)。第二個參數是「父」。 – Ezee 2014-11-24 15:03:43