focusOutEvent |
Здравствуйте, гость ( Вход | Регистрация )
focusOutEvent |
flankerr |
11.9.2008, 17:55
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
Мне надо чтобы когда диалог теряет фокус (т.е. заголовок диалога становиться серым) отрабатывала некая функция. Нашлась focusOutEvent
однако эта функция вызывается даже в том случае если фокус отали дочернему элементу на диалоге.. Как отловить ситуацию именно поетри фокуса а не превода фокуса на дочерние элементы ??? |
|
|
Litkevich Yuriy |
11.9.2008, 18:01
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
посмотри в сторону enum Qt::FocusReason может оно.
|
|
|
trdm |
11.9.2008, 20:49
Сообщение
#3
|
Дмитрий Трошин Группа: Участник Сообщений: 575 Регистрация: 12.1.2008 Пользователь №: 68 Спасибо сказали: 21 раз(а) Репутация: 6 |
зря вы там вот так написали:
скури внимательнее: http://doc.trolltech.com/4.3/qfocusevent.html |
|
|
flankerr |
15.9.2008, 11:20
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
чего то не понимаю я как это сделать....
а рабочего примера ни где найти не получается... |
|
|
Litkevich Yuriy |
15.9.2008, 11:37
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
flankerr, ну пиши, что сделал (исходник не забудь) и как себя ведет.
|
|
|
flankerr |
15.9.2008, 12:27
Сообщение
#6
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
наслудую класс от Ui
в конструторе ставлю setFocus(); переопределяю focusOutEvent(QFocusEvent *e) а дальше при потери фокуса с диалога срабатывает focusOutEvent и всё бы хорошо но только плин он так же срабатывает и на потрерю фокуса с любого дочернего элемента или установки фокуса на любой дочерний элемент что делать с Qt::FocusReason я так и не понял |
|
|
Litkevich Yuriy |
15.9.2008, 12:36
Сообщение
#7
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
flankerr, а пост trdm'а, ты не читал?
откуда такая фукция: focusOutEvent(QFocusEvent *e)? вот какая функция должна быть: QFocusEvent ( Type type, Qt::FocusReason reason = Qt::OtherFocusReason ) и поумолчанию АзерРесон, т.е. любой. а если посмотреть возможные значения Qt::FocusReason, то можно там увидеть такой вариант: Qt::ActiveWindowFocusReason 3 The window system made this window either active or inactive. я думаю это то, что тебе надо. |
|
|
flankerr |
15.9.2008, 13:16
Сообщение
#8
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
читал пост trdm'а но я не понимаю как это использовать.
залаез в асситант увидел focusOutEvent(QFocusEvent *e) попробывал действитеьлно вызывается а QFocusEvent это же класс а не функция и про Qt::ActiveWindowFocusReason я читал но как это всё связать я не понмиаю в MSDN какой никакой а примерчик найти можно а ттут типа есть такая фенка и всё а как ей пользовать а хз... |
|
|
Гость_Гость_* |
15.9.2008, 15:21
Сообщение
#9
|
Гости |
Тебе нужно выполнить функцию - когда юзер другое приложение активирует или когда в твоем приложение просто другое окно выбирает ?
|
|
|
Litkevich Yuriy |
15.9.2008, 15:41
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 29.3.2024, 16:35 |