我有一个QMessageBoxwith Yes和No替代项。
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 {
}
Run Code Online (Sandbox Code Playgroud)
但是由于某种原因,默认答案始终是No。如何将默认按钮设置为Yes
我试过了:
reply.setDefaultButton(QMessageBox::Yes);
Run Code Online (Sandbox Code Playgroud)
但是不能使它起作用。
QMessageBox::question可以传递一个默认值为的额外参数NoButton,并且您没有使用该参数,请参见此处的文档,因此您的代码将变为:
reply = QMessageBox::question(this, "New update", "There is a new update, do you want to update now?", QMessageBox::Yes|QMessageBox::No, QMessageBox::Yes);
Run Code Online (Sandbox Code Playgroud)