关于重写closeEvent实现根据条件判断是否关闭窗口
.h:
protected:
virtual void closeEvent(QCloseEvent *pEvent);
.cpp
void Test::closeEvent(QCloseEvent *pEvent)
{
int iFlag = QMessageBox::warning(this, "关闭窗口”, “确定要关闭?”, QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
if (QMessageBox::Yes == iFlag)
{
pEvent->accept();
}
else
{
pEvent->ignore();
}
}
其实说实话,这里面没什么值得写的,主要就是提醒自己一下:学会用 accecp()和 ignore(),灵活使用即可。