在Qt / C ++中关闭程序时显示消息

时间:2010-07-09 03:48:00

标签: c++ qt

Qt - c ++ 用户关闭程序时显示消息 谢谢

2 个答案:

答案 0 :(得分:2)

最常见的是将aboutToQuit信号连接到广告位 - 但正如文档所说

  

如果信号特别有用   你的申请必须做一些   最后一次清理。请注意,没有用户   在这种状态下可以进行互动。

因此,如果您需要在Qt 中显示消息(因此主事件循环必须仍在运行),这将无效。在这种情况下,我会连接lastWindowClosed(也可能将quitOnLastWindowClosed设置为false,具体取决于您的确切需求)。如果你的应用程序也以其他方式结束(按钮,菜单等),你也必须连接它们。

答案 1 :(得分:2)

如果您的目的只是为了显示消息,您可以按照 Alex Martelli 的回答。

否则,如果您需要基于close的某种执行(例如询问用户您是否要保存更改?有点事情),那么处理QCloseEvent *就可以了

在这种情况下,我要做的是,扩展QWidget类并覆盖它的

void QWidget::closeEvent ( QCloseEvent * event )   [virtual protected]

根据closeEvent ( QCloseEvent * event )的定义,我将执行相应的操作。

希望有所帮助......