Координаты мыши |
Здравствуйте, гость ( Вход | Регистрация )
Координаты мыши |
epishev |
7.4.2011, 8:35
Сообщение
#1
|
Студент Группа: Участник Сообщений: 89 Регистрация: 23.3.2011 Пользователь №: 2533 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всем привет, подскажите как получить координаты мыши,
относительно виджита, например QGraphicsView, ну или на QGraphicsScene. заранее спасибо! |
|
|
wiz29 |
7.4.2011, 8:50
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12 |
Добрый день, есть несколько вариантов. Можно обработать несколько событий для QGraphicsScene или QGraphicsView установив eventFilter для соответствующих объектов, либо с помощью глобальной функции QCursor::pos() - которая возвращает координаты курсора мыши в глобальной системе и трансформировать данную точку сначала в систему координат QGraphicsView объекта методом QGraphicsView::mapFromGlobal, затем, полученный результат, в координаты сцены методом QGraphicsView::mapToScene.
Если же перехватывать события через eventFilter, тогда нужно перехватить событие QEvent::MouseMove , в данном событии содержаться данные о положении курсора с системе координат виджета. либо перехватить событие QEvent::GraphicsSceneMouseMove соответственно получим событие содержащее координаты курсора в системе координат сцены. Ну и третий способ, это пронаследоваться для нужного класса (QGraphicsView или QGraphicsScene) и переопределить соответствующие виртуальные методы. |
|
|
Текстовая версия | Сейчас: 2.12.2024, 2:01 |