Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: mwChief от Апрель 07, 2011, 10:57



Название: [Решено]QTabWidget и ctrl+tab
Отправлено: mwChief от Апрель 07, 2011, 10:57
Есть форма с QTabWidget на нескольких табах которого размещены другие виджеты кроме того сама форма имеет виджет QDateEdit который не принадлежит ни одному табу. Нужно реализовать переключение табов по ctrl+tab. Когда фокус на одном из табов это работает но если на каком-то друго виджете то нет.
Пробовал сделать наследников для всех виджетов которые использую на форме (благо их не так много) и переопределить в них void keyPressEvent ( QKeyEvent* ) так чтобы ctrl+tab игнорировался. Для виджетов внутри табов это сработало (как я понимаю если виджет не обрабатывает событие за это берется его родитель), но вот для QDateEdit который принадлежит самой форме это не работает.
Как решить проблему? И вообще правильно ли я ее пытался решить?


Название: Re: QTabWidget и ctrl+tab
Отправлено: Fess от Апрель 07, 2011, 11:13
Установите на все нужные виджеты фильтр событий через QWidget::installEventFilter(tabWidget), а в событии eventFilter выполняйте нужные действия по переключению вкладок


Название: Re: QTabWidget и ctrl+tab
Отправлено: mwChief от Апрель 07, 2011, 11:49
Спасибо, проблему решил