草庐IT

QCloseEvent

全部标签

c++ - 以不同的方式解释 QCloseEvent

我有一个用C++和Qt编写的桌面Windows应用程序。该应用程序有几个顶级窗口,偶尔需要以编程方式关闭和重新创建。此外,当程序的用户单击关闭按钮(最小化和最大化按钮旁边的那个)时,整个程序应该退出。我遇到的问题是,在这两种情况下,顶层窗口都会收到一个带有QCloseEvent对象的closeEvent()调用。当我看到这种情况发生时,我想退出程序(因为用户可能单击了关闭按钮),但也有可能窗口正在关闭,因为我正在以编程方式删除它以重新创建它。在QMainWindow::closeEvent()中有没有办法区分这两种情况? 最佳答案

c++ - 即使 QCloseEvent 被忽略,窗口也被隐藏

我目前正在尝试将我的Qt应用程序移植到MacOSX,但遇到了以下问题:我的一个窗口类(派生自QMainWindow)在按下关闭按钮时显示一个对话框,您可以在其中保存/放弃更改或中止。这是通过如下重新实现closeEvent来完成的:voidResultsWindow::closeEvent(QCloseEvent*event){if(isWindowModified()){activateWindow();QMessageBox::StandardButtonbutton=QMessageBox::warning(this,APPLICATION_NAME,"Warning:datah