【发布时间】:2012-07-26 02:14:02
【问题描述】:
假设我的应用程序中有 2 个窗口,以及负责它们的两个类:
class MainWindow: public QMainWindow 和 class SomeDialog: public QWidget。
在我的主窗口中,我有一个按钮。单击它时,我需要显示第二个窗口。我是这样做的:
SomeDialog * dlg = new SomeDialog();
dlg.show();
现在,用户在窗口中做一些事情,然后关闭它。此时我想从那个窗口获取一些数据,然后,我想,我将不得不delete dlg。但是我如何捕捉到那个窗口被关闭的事件呢?
或者有没有其他方法可以避免内存泄漏?也许在启动时创建每个窗口的实例会更好,然后只是Show()/Hide() 他们?
我该如何处理这种情况?
【问题讨论】:
标签: c++ qt user-interface qwidget window-management