Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Иволга от Сентябрь 25, 2023, 11:42



Название: Использование QMessageBox
Отправлено: Иволга от Сентябрь 25, 2023, 11:42
Добавляю нестандартные кнопки в QMessageBox с помощью вызова addButton(QString, QMessageBox::ButtonRole).
Для того, чтобы узнать, какая кнопка была нажата, рекомендуется сохранять указатель на добавленную кнопку и сравнивать его со значением clickedButton().
Но! У меня кнопки добавляются в одном методе, а форма вызывается в другом, сохранять указатели я не хочу.
Есть ли другой способ узнать, какая кнопка была нажата?



Название: Re: Использование QMessageBox
Отправлено: kambala от Сентябрь 25, 2023, 13:28
можно в кастомную кнопку добавить какое-то свое свойство через https://doc.qt.io/qt-6/qobject.html#setProperty и прочесть его, либо просто на текст кнопки посмотреть. Вероятно, через группу тоже получится, там можно кнопкам айдишники назначать.


Название: Re: Использование QMessageBox
Отправлено: Иволга от Сентябрь 25, 2023, 13:45
setProperty - это то, что нужно. Спасибо.