QT QMessageBox 默认按钮是什么?

3
我有一个带有"是"和"否"选项的。
QMessageBox::StandardButton reply;
reply = QMessageBox::question(this, "New update", "There is a new update, do you want to update now?", QMessageBox::Yes|QMessageBox::No);

if (reply == QMessageBox::Yes) {

} else {

}

但是由于某些原因,默认答案总是No。我该如何将默认按钮设置为Yes

我尝试过:

reply.setDefaultButton(QMessageBox::Yes);

但是无法使其工作。
1个回答

7

QMessageBox::question 可以传递一个额外的参数,默认值为 NoButton,而您没有使用该参数,请参见文档here。因此,您的代码将变成:

reply = QMessageBox::question(this, "New update", "There is a new update, do you want to update now?", QMessageBox::Yes|QMessageBox::No, QMessageBox::Yes);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接