|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Win32 API - Захват окна, пример - как в PicPick или FSCapture |
|
Win32 API - Захват окна, пример - как в PicPick или FSCapture
|
Новый участник Сообщения: 3 |
Профиль | Отправить PM | Цитировать Приветствую всех, имеется вопрос по части реализации захвата окна под указателем мышки, при этом чтоб окно выделялось по краям цветом. Пример: PicPick, FSCapture, Spy++ реализует захват окна.
Пробывал создавать прозрачное окно, для того чтоб рисовать на нем только выделения, и после сокрытия чтоб выделение пропадало (решилась проблема перерисовки). Но тут большой минус в том что сложно отловить нажатие левой кнопки, чтобы оно не прошло "насквозь" в чужое окно. И при этом еще задевало некоторые элементы которые "меняют свои свойства" при наведении на них мышкой. Пробывал под курсор "запихивать" форму минимальных размеров 4х4 пикселя, чтоб избавиться от ненужного "меняют свои свойства" но так и не смог жестко прикрепить форму к курсору. Посоветуйте, если кто сталкивался с подобной проблемой, подскажите пожалуйста как её решить. Примеры на любом ЯП, или хотя бы просто описание подобной реализации. В FSCapture заметил что разворачивается на весь экран форма, на которой каким-то образом все и выделяется, но с подобной реализацией функция WindowFromPoint возвращает только мое окно. В Spy++ окно не раскрывается, но при этом захвате левая мышка кнопки уже нажата в результате чего нет ненужных - "меняют свои свойства", но нажатая первоначально кнопка это лишнее. Идеально было бы сделать с окном как в FSCapture. |
|
Отправлено: 20:12, 21-02-2010 |
Старожил Сообщения: 181
|
Профиль | Отправить PM | Цитировать Отличный вопрос, присоединяюсь к автору! Если кто знает поделитесь инфой.
|
Отправлено: 20:23, 21-02-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Решил проблему через GetWindow & ChildWindowFromPointEx. Стало идентично как в FSCapture.
Всем спасибо за внимание. |
Отправлено: 08:21, 22-02-2010 | #3 |
Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать Если "захватываемому" окну (которое на десктопе) сделать стиль WS_DISABLED, то скорее всего (зависит от реализации оконной процедуры) оно будет отрисовываться правильно, но сообщений ввода (в т.ч. мыши) получать не будет.
|
Отправлено: 23:41, 22-02-2010 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Графика - [repack] PicPick | _syd_ | Наборы обновлений для Windows XP/2003/Windows 7 | 125 | 23-11-2023 22:41 | |
PicPick 2.1.3 | OSZone Software | Новости программного обеспечения | 0 | 09-11-2009 14:30 | |
[решено] сокрытие окна, как только оно появилось или всплыло | crashtuak | AutoIt | 7 | 30-07-2009 21:47 | |
EventID - 0x0002b0d2 как пример, но бывают и другие коды. | Abonent | Устранение критических ошибок Windows | 0 | 07-04-2008 20:19 | |
Захват: FireWire или A/V | DUBICH | Видео и аудио: обработка и кодирование | 2 | 15-03-2007 12:59 |
|