QT中的改写窗口的关闭事件

一、背景:qt中的窗口不能像office一样,在点击关闭按钮的时候,会弹出是否保存,取消的界面,所有就要重新写关闭事件。
今天在项目中遇到需要重新修改这一个直接关闭窗口的功能,所以就要重载这个函数QCloseEvent。
二、

头文件:#include 在.h文件中protected:void closeEvent(QCloseEvent *event);.cpp中:void 类名::closeEvent(QCloseEvent *event) //根据不同的需求进行添加,比如:{if(IsSaved){qApp->quit();}int ret = QMessageBox::warning(0,"Warning",QString("%1 has been changed!\n Do you want to save it?").arg(filepath),QMessageBox::Yes |QMessageBox::No|QMessageBox::Cancel,QMessageBox::No);if(ret == QMessageBox::Yes) //如果选择保存文件,则执行保存操作{do_file_Save(event);//保存文件}else if(ret == QMessageBox::Cancel){event->ignore();;}else{qApp->quit();//再退出系统,qApp是指向应用程序的全局指针}}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部