Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
AD |
3.10.2008, 14:54
Сообщение
#1
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Есть ли сигнал, который определяет наведение (фокусирование) на каком объекте стрелкa мыши?
Сообщение отредактировал AD - 3.10.2008, 19:06 |
|
|
|
|
ViGOur |
3.10.2008, 19:02
Сообщение
#2
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
Может нужно просто обрабатывать Link. Тот виджет на который указывает курсор мышки и будет обрабатывать это событие.
Сообщение отредактировал ViGOur - 3.10.2008, 19:02 |
|
|
|
|
Litkevich Yuriy |
3.10.2008, 19:05
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
он хочет в одном месте программы узнать над каким виджетом в данный момент уазатель.
|
|
|
|
|
Tonal |
6.10.2008, 8:13
Сообщение
#4
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
QWidget::enterEvent, QWidget::leaveEvent - оно?
|
|
|
|
|
AD |
6.10.2008, 8:19
Сообщение
#5
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Tonal @ 6.10.2008, 9:13) Link QWidget::enterEvent, QWidget::leaveEvent - оно? Не знаю, сейчас проверю. |
|
|
|
|
AD |
6.10.2008, 9:19
Сообщение
#6
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Неа, это не то!!!
|
|
|
|
|
Tonal |
6.10.2008, 10:11
Сообщение
#7
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Тогда объясняй подробнее, что именно тебе надо.
|
|
|
|
|
Litkevich Yuriy |
6.10.2008, 10:30
Сообщение
#8
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
вот уже ближе, но еще не то:
QWidget * QWidget::mouseGrabber () [static] можно еще всех дочерних виджетов опрашивать вот таким методом: bool QWidget::underMouse () const но это муторно и медленно. |
|
|
|
|
AD |
6.10.2008, 10:51
Сообщение
#9
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Да.... не хотелось циклом это делать. Уже сделал. Как-нибудь потом. Задел на будущее, так сказать! Может еще возникнет потребность.
|
|
|
|
|
Tonal |
6.10.2008, 19:20
Сообщение
#10
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Да вроде бы всё просто: ставишь фильтр на QApplication и ловишь события QEvent::Enter и QEvent::Leave.
Пока виджет, для которого был QEvent::Enter но ещё не было QEvent::Leave - под мышей. Ну, или в интересующие моменты просто зовёшь QApplication::widgetAt. П.С. Имей в виду, QEvent::Enter и QEvent::Leave могут приходить в "странном" порядке. По крайней мере я с таким сталкивался в аналоге на WinApi Сообщение отредактировал Tonal - 6.10.2008, 19:22 |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 8.1.2026, 12:26 |