Qt中close和closeEvent
来源:互联网 发布:域名不能备案怎么办 编辑:程序博客网 时间:2024/06/06 04:18
对于一个QDialog类的对话框可以用reject()和accept()来控制关闭时的行为。对于QMainWindow而言则可以通过close()信号和closeEvent(QCloseEvent *)函数。当然,这两个都是从QWidget那里继承过来的,所以严格说来只要是Qt控件就都能用,但应该还是对主窗口应用比较多吧。
每当点击窗口上方的关闭按钮,就会引发窗口的bool close()响应,如果窗口被关闭返回true,否则返回false。如果没有重载,close()会调用void closeEvent(QCloseEvent *)函数,缺省关闭窗口并返回true;作为protected的成员,这个函数同样可以重载。比如
void [MainWindow Name]::closeEvent(QCloseEvent *event)
{
int r=QMessageBox:question(this,tr("Last Hint"),tr("Are you sure you want to quit?"),QMessageBox::Yes|QMessageBox::Default,QMessageBox::No|QMessageBox::Escape);
if (r==QMessageBox::Yes)
event->accept();
else
event->ignore();
}
其中accept就是让这个关闭事件通过并顺利关闭窗口,ignore就是将其忽略回到窗口本身。这里可千万得注意在每一种可能性下都对event进行处理,以免遗漏。
每当点击窗口上方的关闭按钮,就会引发窗口的bool close()响应,如果窗口被关闭返回true,否则返回false。如果没有重载,close()会调用void closeEvent(QCloseEvent *)函数,缺省关闭窗口并返回true;作为protected的成员,这个函数同样可以重载。比如
void [MainWindow Name]::closeEvent(QCloseEvent *event)
{
int r=QMessageBox:question(this,tr("Last Hint"),tr("Are you sure you want to quit?"),QMessageBox::Yes|QMessageBox::Default,QMessageBox::No|QMessageBox::Escape);
if (r==QMessageBox::Yes)
event->accept();
else
event->ignore();
}
其中accept就是让这个关闭事件通过并顺利关闭窗口,ignore就是将其忽略回到窗口本身。这里可千万得注意在每一种可能性下都对event进行处理,以免遗漏。
0 0
- Qt中close和closeEvent
- Qt中的close和closeEvent
- Qt中的close和closeEvent
- Linux学习笔记(八十四)——Qt中的close和closeEvent
- Linux学习笔记(八十四)——Qt中的close和closeEvent
- QT中关于close()系统调用 和qt close()冲突
- 【Qt开发】QT对话框去掉帮助和关闭按钮 拦截QT关闭窗口的CloseEvent
- QT对话框去掉帮助和关闭按钮 拦截QT关闭窗口的CloseEvent
- qt 的close和系统的close冲突。close(),close(fd)
- qt 的close和系统的close冲突。close(),close(fd)
- qt 的close和系统的close冲突。close(),close(fd)
- qt 的close和系统的close冲突。close(),close(fd)
- 拦截QT关闭窗口的CloseEvent
- 拦截QT关闭窗口的CloseEvent
- 拦截QT关闭窗口的CloseEvent
- 拦截QT关闭窗口的CloseEvent()解析
- 拦截QT关闭窗口的CloseEvent
- Qt学习 重写closeEvent退出对话框
- 菏泽9路公交车
- Spring笔记---Spring获取JNDI数据源
- 【C++ Primer每日一刷之七】指针操作
- poj 1631 || hdu 1950 Bridging signals(动态规划:LIS)
- EBS 学习笔记 wsh_delivery_details_pub.update_shipping_attributes 使用
- Qt中close和closeEvent
- 内核中的kmalloc函数详解
- ios中kvo/kvc注意事项
- 菏泽10路公交车
- UITableView的registerClass forCellReuseIdentifier用法详解
- Linux下的lds链接脚本简介(四)
- LOGO创意-IT行业-随记
- 菏泽11路公交车
- 正则表达式后向引用详解(扩展正则表达式功能)