Qt 理解closeEvent两种代码之间的差异
由于我已经提到了这个堆栈溢出问题线程,我想了解两个代码之间的区别:Qt 理解closeEvent两种代码之间的差异,qt,Qt,由于我已经提到了这个堆栈溢出问题线程,我想了解两个代码之间的区别: void MyMainWindow::closeEvent(QCloseEvent *e) { foreach (QWidget *widget, QApplication::topLevelWidgets()) { if (widget != this) { // avoid recursion. widget->close(); }
void MyMainWindow::closeEvent(QCloseEvent *e)
{
foreach (QWidget *widget, QApplication::topLevelWidgets()) {
if (widget != this) { // avoid recursion.
widget->close();
}
}
e->accept();
}
void MyMainWindow::closeEvent(QCloseEvent *e)
{
foreach (QWidget *widget, QApplication::topLevelWidgets()) {
if (widget != this) { // avoid recursion.
widget->close();
}
}
e->accept();
}
QMainwindow::closeEvent(e);
}
我想知道行
QMainwindow::closeEvent(e)的含义;MyMainWindow::closeEvent(QCloseEvent*e)
在上述代码中。有人能帮我吗?这一行只是显式地调用了超类函数。当您有不同的函数或数据成员声明时,您可以这样指定引用哪一个
在这里,这个函数不是在QMainWindow中实现的,只是在它的超类QWidget中实现的,您可以看到它只调用event->accept()代码>()。这意味着QMainwindow::closeEvent(e)代码>与e->accept()相同代码>