Russian Qt Forum
Ноябрь 23, 2024, 08:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Использование QMessageBox  (Прочитано 5907 раз)
Иволга
Чайник
*
Offline Offline

Сообщений: 58



Просмотр профиля
« : Сентябрь 25, 2023, 11:42 »

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

Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #1 : Сентябрь 25, 2023, 13:28 »

можно в кастомную кнопку добавить какое-то свое свойство через https://doc.qt.io/qt-6/qobject.html#setProperty и прочесть его, либо просто на текст кнопки посмотреть. Вероятно, через группу тоже получится, там можно кнопкам айдишники назначать.
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Иволга
Чайник
*
Offline Offline

Сообщений: 58



Просмотр профиля
« Ответ #2 : Сентябрь 25, 2023, 13:45 »

setProperty - это то, что нужно. Спасибо.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.093 секунд. Запросов: 22.