Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Alp от Сентябрь 18, 2009, 17:13



Название: mouseMoveIn/mouseMoveOut - как бы их реализовать?
Отправлено: Alp от Сентябрь 18, 2009, 17:13
Хочется приделать такую вот свистелку к виджету: при наведении мыши на нем появляется какая-то картинка. При уведении курсора за его пределы - скрывается.

Как понять, что мышь на виджете - это ясно: mouseTracking/mouseMoveEvent. А вот как бы попроще понять, что мышь покинула его пределы? Есть ли эвенты вроде сабжа?

PS: Понятно, что в общем случае если мышь уводится за пределы - значит родитель виджета получит mouseMoveEvent. Но мне не очень хочется привызявать их друг к другу, ведь родителю придется у всех детей обновлять состояние.


Название: Re: mouseMoveIn/mouseMoveOut - как бы их реализовать?
Отправлено: BRE от Сентябрь 18, 2009, 17:18
Посмотри на:
void QWidget::enterEvent ( QEvent * event )   [virtual protected]
void QWidget::leaveEvent ( QEvent * event )   [virtual protected]


Название: Re: mouseMoveIn/mouseMoveOut - как бы их реализовать?
Отправлено: Alp от Сентябрь 18, 2009, 17:28
Да!!! Это оно самое! Спасибо.