它是如何工作的
how it works QMessageBox
请告诉我哪里做错了?我的代码:
void deletetable::on_pb_dell_clicked()
{
QMessageBox messageBox(QMessageBox::Question,
tr("Sure want to quit?"), tr("Sure to quit?"), QMessageBox::Yes | QMessageBox::No, this);
messageBox.setButtonText(QMessageBox::Yes, tr("Yes"));
messageBox.setButtonText(QMessageBox::No, tr("No"));
messageBox.exec();
if (messageBox.QMessageBox::Yes) {
emit deleteYear(year);
close();
} else {
}
}
我的函数 deleteYear(year)
在任何条件下都有效,即如果我单击“否”,该函数仍然有效。
我从这里举了一个例子
messageBox.QMessageBox::Yes
只是访问 enum
Yes
,每次都会进行相同的评估。
您想捕获问题和查询的实际响应,例如:
auto response = QMessageBox::question(this, "Save", "Do you wish to save?", QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
if (response == QMessageBox::Save) { ... }
请在此处查看 https://doc.qt.io/qt-5/qmessagebox.html#question 了解更多信息。
要保持与上面相同的格式,您可以获得 messageBox.result()
的响应,例如
if (messageBox.result() == QMessageBox::Yes) { ... }
请告诉我哪里做错了?我的代码:
void deletetable::on_pb_dell_clicked()
{
QMessageBox messageBox(QMessageBox::Question,
tr("Sure want to quit?"), tr("Sure to quit?"), QMessageBox::Yes | QMessageBox::No, this);
messageBox.setButtonText(QMessageBox::Yes, tr("Yes"));
messageBox.setButtonText(QMessageBox::No, tr("No"));
messageBox.exec();
if (messageBox.QMessageBox::Yes) {
emit deleteYear(year);
close();
} else {
}
}
我的函数 deleteYear(year)
在任何条件下都有效,即如果我单击“否”,该函数仍然有效。
我从这里举了一个例子
messageBox.QMessageBox::Yes
只是访问 enum
Yes
,每次都会进行相同的评估。
您想捕获问题和查询的实际响应,例如:
auto response = QMessageBox::question(this, "Save", "Do you wish to save?", QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
if (response == QMessageBox::Save) { ... }
请在此处查看 https://doc.qt.io/qt-5/qmessagebox.html#question 了解更多信息。
要保持与上面相同的格式,您可以获得 messageBox.result()
的响应,例如
if (messageBox.result() == QMessageBox::Yes) { ... }