кнопка "?" - what's this |
Здравствуйте, гость ( Вход | Регистрация )
кнопка "?" - what's this |
quarz |
6.5.2011, 17:14
Сообщение
#1
|
Студент Группа: Участник Сообщений: 49 Регистрация: 3.11.2009 Пользователь №: 1202 Спасибо сказали: 5 раз(а) Репутация: 0 |
Все знают кнопку "?" в заголовке окна, которая запускает режим What's this.
Я хочу при нажатии на нее показывать окно с инфой о программе (для маленьких приложений, состоящих из одной формы и без меню это бывает очень нужно). Нажатие на кнопку я научился перехватывать через событие QEvent::QueryWhatsThis. А вот режим What's this, в котором меняется указатель мыши и ждет клика на какой-нить элемент формы, у меня отключить не получается. Есть способы это сделать? P.S. нашел интересный атрибут у виджетов WA_CustomWhatsThis: Indicates that the widget wants to continue operating normally in "What's This?" mode. По умолчанию он отключен, включение ничего не меняет. И как-то подозрительно мало в инетрнете об этом написано. Еще нашел класс QWhatsThis, у которого есть статические методы enterWhatsThisMode(), leaveWhatsThisMode() и inWhatsThisMode(). При нажатии на кнопку "?" я в обработчике события вижу, что происходит вход в режим WhatsThis. Но программный выход из режима тоже ничего не меняет. Курсор по-прежнему остается Qt::WhatsThisCursor и ждет клика по контролу Сообщение отредактировал quarz - 6.5.2011, 18:11 |
|
|
quarz |
10.5.2011, 11:59
Сообщение
#2
|
Студент Группа: Участник Сообщений: 49 Регистрация: 3.11.2009 Пользователь №: 1202 Спасибо сказали: 5 раз(а) Репутация: 0 |
тогда спрошу иначе:
почему никто не использует кнопку "?" для отображения окна "О программе", это же удобно? На всех форумах спрашивают только как ее скрыть. Или я что-то не понимаю в интерфейсах? |
|
|
quarz |
10.5.2011, 13:22
Сообщение
#3
|
Студент Группа: Участник Сообщений: 49 Регистрация: 3.11.2009 Пользователь №: 1202 Спасибо сказали: 5 раз(а) Репутация: 0 |
Разобрался
Режим WhatsThis при включении инициирует событие QEvent::EnterWhatsThisMode, в его обработчике и надо выключать режим. Часть кода для минимального примера: Раскрывающийся текст
А вопрос о целесообразности такого применения остается |
|
|
Текстовая версия | Сейчас: 29.11.2024, 3:30 |