void Widget::closeEvent(QCloseEvent *e){
if(QMessageBox::question(this,"question","请问是否要关闭?") == QMessageBox::Yes){
/**
这里是accept接收事件并处理,那么就会造成closeEvent在此处就处理了,
(此事件)不会再往下传递了。
如果这里写的是 e->ignore();,那么这里就会忽略此事件,事件在此处处理之后
仍然会往下传递,传给“父级组件”继续处理。
注意!!!!!这里说的是“父级组件”而不是父类。
*/
e->accept();
}else{
e->ignore();
}
}
Qt 事件的忽略和处理
最新推荐文章于 2024-02-19 15:40:29 发布