1

我想在这段代码中为我的按钮命名。它是关于 QMessageBox 的。

if(QMessageBox::Ok == QMessageBox(
     QMessageBox::Question,
     "Confirmar registro.",
     "¿Desea confirmar guardar los datos?",
     QMessageBox::Ok,
     tr("Aceptar") | QMessageBox::Cancel ,
     tr("Cancelar")).exec()
   )
4

3 回答 3

2

QPushButton * QMessageBox::addButton(const QString & text, ButtonRole role)创建一个带有给定文本的按钮。

于 2015-07-13T12:33:52.433 回答
1

几乎直接来自自定义消息框上的文档

QMessageBox msgBox;
msgBox.setText("Confirmar registro.");
msgBox.setInformativeText("¿Desea confirmar guardar los datos?");
QAbstractButton *acceptButton = msgBox.addButton("Aceptar", QMessageBox::YesRole);
QAbstractButton *cancelButton = msgBox.addButton("Cancelar", QMessageBox::NoRole);
msgBox.setIcon(QMessageBox::Question);
msgBox.exec();
于 2015-07-13T12:27:08.337 回答
0

您可以QAbstractButtonQMessageBoxusingaddButton()方法中添加自定义。

使用示例:

QMessageBox msgBox;
msgBox.setText(trUtf8("Confirmar registro."));
msgBox.setInformativeText("¿Desea confirmar guardar los datos?");
QAbstractButton *myYesButton = msgBox.addButton(trUtf8("Aceptar"), QMessageBox::AcceptRole);
QAbstractButton *myNoButton = msgBox.addButton(trUtf8("Cancelar"), QMessageBox::NoRole);
msgBox.setIcon(QMessageBox::Question);
msgBox.exec();

if(msgBox.clickedButton() == myNoButton)
{
    return;
}
于 2015-07-13T12:28:13.717 回答