Как в QT отслеживать положение указателя мыши?
Типа такого, наверноеАктален вопрос с ее захватом и невыпусканием за пределы окна.
Сделаю вот что: как только курсор оказывается за допустимыми пределами, он тут же выставляется в ближайшее допустимое положение. Для включения-выключения этого "захвата" будет специальная кнопочка.
Такие дела
jpg, yes!
Допустим запустили твою прогу, курсор помещается в эту область и больше никуда не пущается - ни к другим областям GUI, ни к другим программам.
Понятно, что можно будет вернуться клавой, но как то всё это не очень.
Если делать область, то имхо просто перемещение по ней отслеживать - подвинули мышь на 50пикселей вверх - камера повернулась на 5градусов вверх.
Для более быстрой крутилки продублировать область двумя ползунками.
как только курсор оказывается за допустимыми пределами, он тут же выставляется в ближайшее допустимое положениене надо хотеть так делать!
все такие штуки контр-интуитивны, не юзер-френдли, своей альтернативностью лишь пугают
лучше отслеживать мышиный дрэг внутри области, чтоб пользователь мог безопасно провести мышкой над областью и покрутить если ему хочется
например, так: если пользователь зажал мышиный левый батон внутри области, прячем курсор, сохраняя его первоначальное положение и начинаем отслеживать drag - следим за координатами, шевелим модельку. Когда drag закончился, возвращаем в запомненное положение и вновь показываем курсор
Вообще такое обычно делают через захват мыши по нажатию кнопки на областью.
Приложение - для управления роботом. Wasd его двигают, а мышью крутится башня с камерой и ведется стрельба) как в контре кароч)
тогда пользователь кликает на область, мышь прячется и тогда уже до нажатия ESC мышь забирается программой, а потом восстанавливается где была до клика
Не совсем очевидно, как "забрать" мышь
Прочитать по ссылке из моего первого ответа
Оставить комментарий
nemec2707
Прошу сильно не пинать, только начинаю изучать QT.Глобально задача такая - написать гуи, который позволит при помощи мыши вертеть реальным механизмом в пространстве. Примерно вот так http://vk.com/video689180_165157768 , но здесь используются ползунки)
Теперь мне бы хотелось запилить в области гуя некоторую область, в пределах которой можно перемещать курсор мыши и получать ее координаты. И было бы здорово, если бы область не выпускала курсор за пределы себя.
Как это правильнее всего сделать? Можно в паре предложений, чтоб я просто понял, в какую сторону копать.