我希望在窗口关闭后,删除窗口对象并将指针强制转换为 nullptr。
有一个 Qt::WA_DeleteOnClose 标志可以在关闭后删除对象。但是,为了将指针设置为 nullptr,我需要发送一些信号,但令人惊讶的是找不到。
显然,有一定的QWidget::closeEvent,但说实话,我根本不知道如何准备这些事件。
我希望在窗口关闭后,删除窗口对象并将指针强制转换为 nullptr。
有一个 Qt::WA_DeleteOnClose 标志可以在关闭后删除对象。但是,为了将指针设置为 nullptr,我需要发送一些信号,但令人惊讶的是找不到。
显然,有一定的QWidget::closeEvent,但说实话,我根本不知道如何准备这些事件。
closeEvent 不是信号,而是事件。连接起来比较困难,没有必要(在正在解决的任务的框架内)。
如果你想挂上“对象删除”事件, 挂上 QObject::destroyed。或者您可以使用 QPointer<...> 代替常规指针 - 当受控对象被删除时,它将自动设置为零。