crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Перехватить все события мыши, Как будто нажали мышку и тянем
Obey-Kun
  опции профиля:
сообщение 31.1.2011, 4:19
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 96
Регистрация: 24.3.2010
Пользователь №: 1556

Спасибо сказали: 3 раз(а)




Репутация:   0  


Здравствуйте. Проблема такая. У меня в одном виджете есть ручной скроллинг. Зажали правую кнопку → тащим. Оно прокручивается. Причём когда курсор достигает края экрана, он перепрыгивает на противоположную его (экрана) сторону — как в Okular.

Теперь хочу реализовать прокрутку с зажатым пробелом. То есть так: зажали пробел → двигаем курсором. Проблема в том, что если мы зажимаем на виджете кнопку мыши и водим курсором, то он ловит все события с неё — даже если она выйдет за края окна. Как можно заставить его делать так же в случае с пробелом?

Кто-нибудь такое реализовывал?

upd: вот только что нашёл по теме http://forum.sources.ru/index.php?showtopic=302429 (правда, у него там ничего и не получилось, вроде).

Сообщение отредактировал Obey-Kun - 31.1.2011, 4:26
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 31.1.2011, 13:35
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(Алексей1153 @ 31.1.2011, 12:43) *
void QWidget::grabMouse ()
Grabs the mouse input.

This widget receives all mouse events until releaseMouse() is called; other widgets get no mouse events at all


да, я помню :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- Obey-Kun   Перехватить все события мыши   31.1.2011, 4:19
- - Алексей1153   >>Как можно заставить его делать так же в сл...   31.1.2011, 10:43
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 10:43) ко...   31.1.2011, 10:48
- - Алексей1153   igor_bogomolov, а что именно должно быть не просто...   31.1.2011, 11:07
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 11:07) ig...   31.1.2011, 11:20
- - Алексей1153   igor_bogomolov, при отпускании должна вызваться ke...   31.1.2011, 11:23
- - igor_bogomolov   ты опять меня не понял. keyReleaseEvent будет прих...   31.1.2011, 11:25
- - Алексей1153   как так щас проверю   31.1.2011, 11:27
- - igor_bogomolov   ну ё моё, ну Алексей, ты что? События нажатия кно...   31.1.2011, 11:33
- - Алексей1153   оть #include <QtDebug> void CMy:...   31.1.2011, 11:38
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 11:38) мы...   31.1.2011, 11:39
- - Алексей1153   ну неважно - способ я только что нашёл и проверил.   31.1.2011, 11:40
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 11:38) e-...   31.1.2011, 11:45
- - Алексей1153   ага void CMy::mousePressEvent(QMouseE...   31.1.2011, 11:56
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 11:56) аг...   31.1.2011, 12:00
- - Алексей1153   да ну, всё приходит. Я ж не выводил их void CMy...   31.1.2011, 12:10
- - igor_bogomolov   Алексей1153, мышкой где водишь, над формой? Прилож...   31.1.2011, 12:22
- - Алексей1153   да, над формой. Я же не грабил мышь. Пробовал в ра...   31.1.2011, 12:52
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 12:52) да...   31.1.2011, 13:00
- - Алексей1153   Цитата(Алексей1153 @ 31.1.2011, 12:43) vo...   31.1.2011, 13:35
- - igor_bogomolov   Цитата(Алексей1153 @ 31.1.2011, 13:35) да...   31.1.2011, 13:40
- - Алексей1153   вот по ТЗ ТС (каламбур прям) даже таймер не понад...   31.1.2011, 14:30
- - Obey-Kun   grabMouse() пробовал. Почему-то после этого виджет...   31.1.2011, 14:30
- - Алексей1153   Obey-Kun, я подправил пост - там аттач смотри   31.1.2011, 14:31
- - Obey-Kun   Ок. Сейчас в метро буду ехать — посмотрю .   31.1.2011, 14:49
- - Алексей1153   Obey-Kun, только вагоны не двигай )))   31.1.2011, 14:55
- - igor_bogomolov   Алексей1153, понял почему у меня не получалось. Са...   31.1.2011, 14:55
- - Алексей1153   igor_bogomolov, я в винде использовал SetCapture()...   31.1.2011, 14:57
- - Obey-Kun   А! Понял, почему не работало! Я делал grab...   31.1.2011, 17:59


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 2:15