在关闭窗口之前做一些操作,向用户提示是否关闭窗口。
由于一般的窗口都是继承自QWidget, 那么我们可以通过覆盖QWidget中的虚函数closeEvent(QCloseEvent* event);来达到这个目的。
(1)首先mainwindow.h文件里添加如下内容:
include <QCloseEvent>
public:
void closeEvent(QCloseEvent *event);
(2)在mainwindow.cpp文件里添加实现代码
void MainWindow::closeEvent(QCloseEvent *event)
{
int ret = QMessageBox::warning(this,tr("退出提示"),tr("确定退出?"),QMessageBox::Cancel,QMessageBox::Ok);
if(QMessageBox::Ok == ret)
{
event->accept();
}
else
{
event->ignore();
}
}