Russian Qt Forum
Сентябрь 23, 2024, 09:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как получить полный контроль над мышкой за пределами формы.  (Прочитано 3993 раз)
PavelllG
Гость
« : Ноябрь 28, 2011, 17:32 »

Задача такая нажать и отпустить кнопку мыши, за пределами рабочего окна в любом месте экрана, и вывести после этого график интенсивности пикселей на прямой между нажатиями и отпуском.
Хотел сделать так нажал кнопку на тулбаре, в её обработчике сделал  grabMouse(), а в событии mouseReleaseEvent делаю releaseMouse(), кликаю внутри формы все работает, но если первый раз кликаю снаружи, то теряеться фокус у окна и сразу вызываеться событие mouseReleaseEvent, до того как я отпускаю кнопку мыши, подскажите что можно сделать , чтобы фокус не терялся или мышь вообще блокировалась для внешних окон?
Записан
Bepec
Гость
« Ответ #1 : Ноябрь 29, 2011, 08:27 »

сделать прозрачный виджет на весь экран Улыбающийся

Qt не позволяет работать с чужими окнами, потому смотри или в костыли (виджет на весь экран прозрачный), или WinApi, который это позволяет.
Записан
PavelllG
Гость
« Ответ #2 : Ноябрь 29, 2011, 21:35 »

Сделал таймер и в нем через win api получаю состояние мыши=)
Прозрачная форма потенциально лучше, на ней наверно можно рисовать, надо попробовать спасибо.
Записан
Bepec
Гость
« Ответ #3 : Ноябрь 30, 2011, 07:04 »

Тему пожалуйста переименуй на манер [РЕШЕНО]название темы и закрой.
Записан
LisandreL
Птица говорун
*****
Offline Offline

Сообщений: 984


Надо улыбаться


Просмотр профиля
« Ответ #4 : Ноябрь 30, 2011, 07:41 »

Bepec, зачем закрывать-то темы? В замешательстве Они ж есть не просят.
Потом кому-нибудь понадобится это же самое, возникнет уточняющий вопрос, а тема-то закрыта.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #5 : Ноябрь 30, 2011, 07:43 »

Bepec, зачем закрывать-то темы? В замешательстве Они ж есть не просят.
Потом кому-нибудь понадобится это же самое, возникнет уточняющий вопрос, а тема-то закрыта.
Согласен.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Bepec
Гость
« Ответ #6 : Ноябрь 30, 2011, 08:02 »

Ладно, ладно, свободу слова попугаям, но [РЕШЕНО] - надо обязательно сделать Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.126 секунд. Запросов: 23.