Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: spirits25 от Март 23, 2012, 14:00



Название: Обработка нажатия мыши на вкладки [РЕШЕНО]
Отправлено: spirits25 от Март 23, 2012, 14:00
Есть QTabWidget с вкладками. Ей через setTabBar установлен QTabBar. Как мне определить по какой вкладке и какой кнопкой нажали?
Если переопределить mousePressEvent, то определяю кнопку,но не пойму откуда вытащить номер вкладки?
И ещё, как сделать, чтобы event проходил:
Код:
    def mousePressEvent(self, event):
        print event.button()
        event.accept()
в этом случае вижу какой кнопкой нажал, но само нажатие не срабатывает.


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: mutineer от Март 23, 2012, 14:01
event.accept() на event.ignore() заменить пробовал?


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: spirits25 от Март 23, 2012, 14:03
event.accept() на event.ignore() заменить пробовал?
event.ignore() лишь проигнорирует событие.


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: GreatSnake от Март 23, 2012, 14:04
не пойму откуда вытащить номер вкладки?
Код
C++ (Qt)
int QTabBar::tabAt ( const QPoint & position ) const


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: mutineer от Март 23, 2012, 14:05
Ну я всегда путаюсь какой из них запрещает дальнейшую обработку события


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: spirits25 от Март 23, 2012, 14:13
не пойму откуда вытащить номер вкладки?
Код
C++ (Qt)
int QTabBar::tabAt ( const QPoint & position ) const
А что в position должно пойти? Текущее положение курсора? нет.. Подскажи что именно.

Ну я всегда путаюсь какой из них запрещает дальнейшую обработку события
ignore он и в Африке игнор=)


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: GreatSnake от Март 23, 2012, 14:30
А что в position должно пойти? Текущее положение курсора? нет.. Подскажи что именно.
QMouseEvent::pos()


Название: Re: Обработка нажатия мыши на вкладки
Отправлено: spirits25 от Март 23, 2012, 14:37
А что в position должно пойти? Текущее положение курсора? нет.. Подскажи что именно.
QMouseEvent::pos()

И почему спросил?=) Спасибо, всё остальное доделал)