Могу ли я использовать свою собственную пользовательскую строку в setDefaultButton?
Я хотел бы использовать свою собственную строку на кнопке в перечисленных ниже функциях "msgBox.setDefaultButton" и "msgBox.addButton":
msgBox.setDefaultButton(QMessageBox::Save);
msgBox.addButton(QMessageBox::Abort);
вместо "Сохранить" и "Прервать", которые встроены, я хотел бы поставить свой собственный текст.
пожалуйста, дайте мне знать, если это возможно, или, пожалуйста, дайте мне альтернативу для вышеупомянутых строк, чтобы создать кнопку с моим собственным произвольным текстом.
пример:
msgBox.setDefaultButton(QMessageBox::"Lakshmi");
msgBox.addButton(QMessageBox::"Kanth");
ТИА.
С уважением, Лакшмикант.G
1 ответ
QMessageBox::Save
а также QMessageBox::Abort
не являются переменными, где вы берете текст, но являются частью перечисления и внутренне создают кнопки с предварительно установленным текстом. Если вы хотите установить пользовательские тексты addButton()
функция перегружена:
void QMessageBox::addButton(QAbstractButton *button, ButtonRole role)
QPushButton *QMessageBox::addButton(const QString &text, ButtonRole role)
QPushButton *QMessageBox::addButton(StandardButton button)
Так что для вашего случая вы можете использовать любой из других вариантов, как показано ниже:
QMessageBox w;
QPushButton* Lakshmi = w.addButton("Lakshmi", QMessageBox::YesRole);
w.addButton("Kanth", QMessageBox::NoRole);
w.setDefaultButton(Lakshmi);
w.show();