QT5主界面为“关闭窗体”按钮和其action添加关闭窗口事件,可以询问是否退出
1.在信号与槽函数中,actQuit关联信号与槽函数,如下:
2.在mainwindow.h文件MainWindow类中添加关闭窗口事件closeEvent
3.在mainwindow.cpp文件添加void MainWindow::closeEvent(QCloseEvent *event)函数
//=============================================================================
相关代码:
class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();void closeEvent(QCloseEvent *event);//关闭窗口事件,可以询问是否退出
private:Ui::MainWindow *ui;
};
void MainWindow::closeEvent(QCloseEvent *event)
{ //窗口关闭时询问是否退出QMessageBox::StandardButton result=QMessageBox::question(this, "确认", "确定要退出本系统吗?",QMessageBox::Yes|QMessageBox::No |QMessageBox::Cancel,QMessageBox::No);if (result==QMessageBox::Yes)event->accept();elseevent->ignore();
}