Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.137.170.183] |
|
Сообщ.
#1
,
|
|
|
Добрый день!
Пожалуйста, помогите идеей или решением. Нужно реализовать выбор окна так, как это сделано в программах Window Detective или Process Explorer, когда выбирается окно при помощи курсора-мишени. Курсор меняется функцией SetSystemCursor, а восстанавливается SystemParametersInfo(SPI_SETCURSORS, 0, NULL, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE) А вот между вызовами этих методов, пока не выбрано нужное окно, нужно запретить изменять курсор. Но другие окна меняют курсор по своему усмотрению. Как можно это реализовать (запретить курсору меняться)? Прикреплённая картинка
|
Сообщ.
#2
,
|
|
|
Зачем менять системные курсоры. Мне было достаточно просто захватить его SetCapture() и менять у себя SetCursor(LoadCursor())
|
Сообщ.
#3
,
|
|
|
Такой финт проходит, если не прятать основное окно (захватившее мышь). А если окно прячется, это уже не работает
|
Сообщ.
#4
,
|
|
|
Цитата estra @ Пожалуйста, помогите идеей или решением. Делаешь снимок всего экрана, блитишь на полноэкранное своё окно с заданным тобой курсором, окна отслеживаешь тем же WindowFromPoint с предварительной обработкой WM_NCHITTEST и возвратом HTTRANSPARENT |