Перехватить все события мыши, Как будто нажали мышку и тянем |
Здравствуйте, гость ( Вход | Регистрация )
Перехватить все события мыши, Как будто нажали мышку и тянем |
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 |
|
|
igor_bogomolov |
31.1.2011, 11:20
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
igor_bogomolov, а что именно должно быть не просто ? Ну а так - на Qt не делал ещё подобное. нет возможности средствами Qt узнать нажат ли пробел, или любая другая кнопка, за исключением модификаторов. Да и события от клавиатуры посмотри как генерируются. Если ты нажмёшь пробел, тебе с частотой 400мс (это настраивается) быдут последовательно приходить события keyPressEvent, keyReleaseEvent. Т.е. я так с ходу не могу даже сообразить как свою таблицу состояний клавиатуры сделать. Видимо здесь без использования API системы не обойтись. Всё это конечно лишь моё мнение, возможно я что то упустил в документации. |
|
|
Текстовая версия | Сейчас: 13.12.2024, 11:02 |