Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Magseven от Октябрь 30, 2015, 14:37



Название: (РЕШЕНО)Отследить нажатие мышью на кнопку комбобокса
Отправлено: Magseven от Октябрь 30, 2015, 14:37
Возникла необходимость отслеживать нажатие мышью на кнопку комбобокса. Может быть у кого-нибудь есть идеи?
Заранее благодарен!


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: GreatSnake от Октябрь 30, 2015, 14:39
У QComboBox-а нет отдельной кнопки. Отслеживай нажатие на сам виджет.


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: Old от Октябрь 30, 2015, 16:06
Если хочеться отловить момент выпадения списка, то есть виртуальный метод showPopup.


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: Bepec от Октябрь 30, 2015, 17:25
Вариант установить eventFilter и отлавливать там событие QMouseEvent


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: Magseven от Ноябрь 06, 2015, 07:01
Попробую отслеживать QMouseEvent, но как узнать расположение и размеры кнопки?


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: Racheengel от Ноябрь 06, 2015, 10:08
Так а чем showPopup не угодил...?


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: Magseven от Ноябрь 06, 2015, 10:13
Необходимо различать showPopup после нажатия на Enter и после нажатия на кнопочку


Название: Re: Отследить нажатие мышью на кнопку комбобокса
Отправлено: GreatSnake от Ноябрь 06, 2015, 11:10
Необходимо различать showPopup после нажатия на Enter и после нажатия на кнопочку
Можешь в showPopup() проверить нажатие кнопки через QGuiApplication::mouseButtons().


Название: Re: (РЕШЕНО)Отследить нажатие мышью на кнопку комбобокса
Отправлено: Magseven от Ноябрь 06, 2015, 12:29
Спасибо за совет. Упустил из виду.