|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|
Как отследить события чужого окна?06.04.2021, 19:22. Показов 8573. Ответов 53
Метки нет (Все метки)
Здравствуйте!
Помогите, пожалуйста в решении следующей задачи... Есть окно цель которого "следить" за неким участком экрана, а точнее за тем, что происходит под ним.. . Допустим, что окно следит за Paint-ом, браузером или word-ом и пользователь двигает(или скролит) этот самый Paint, word или браузер. Окно должно двигаться вслед за действиями пользователя. Т.е. окно должно как бы приклеится к "отслеживаемой поверхности". Сделать это можно двумя способами: Первый, отслеживать и анализировать графические изменения на экране. Теоретически есть и второй способ.... (вероятно, более простой, если знать как это делать) Определить hWnd отслеживаемого окна(находящегося под следящим окном) и отслеживать его события. Если, не трудно подскажите, пожалуйста как это делается, а точнее... Как получить hWnd окна находящегося под следящим окном? И как отследить события окна по hWnd? Заранее, Спасибо!
0
|
|
| 06.04.2021, 19:22 | |
|
Ответы с готовыми решениями:
53
Как добавить свою кнопку в title-bar ЧУЖОГО окна? Как зная дескриптор чужого окна сделать его неактивным? Как отследить разфокуксировку окна |
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|||||
| 18.04.2021, 21:51 [ТС] | |||||
|
Вот, еще что интересно: у GetCursorPos_ параметром служит указатель на структуру POINT, которая получает экранные координаты курсора. Но...... указатель на структуру Р это @p, следовательно, строка должна выглядеть вот так:
Тем не менее, она работает и так: Добавлено через 14 минут Pro_grammer, Кстати, после экспериментов выяснилось, что WindowFromPoint видит hwnd невидимого глазом пользователя "дырявого" окна. Т.е. Видит не окно под "дыркой", которое видно пользователю, а окно содержащее дырку. Так, что его хоть на миг, но придется убрать с экрана, как это делают скришоторы, п жаль.... Хотелось этого избежать из эстетических соображений.
0
|
|||||
|
|
|||
| 18.04.2021, 22:06 | |||
|
Debug p Debug @p По логике у структуры и должен возвращается её адрес, а что же ещё? А так возвращается значение переменных Debug p\x Debug p\y Добавлено через 12 минут У меня ваш эксперимент не подтвердился. При клике на "дырке" выдает HWND именно окна под дыркой.
0
|
|||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|
| 18.04.2021, 22:15 [ТС] | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||||||
| 13.11.2021, 08:51 | ||||||
|
Пытаюсь использовать API функцию GetWindow_() с параметром GW_HWNDNEXT, которая, по идее, должна возвращать хендл окна, которое находится ПОД активным окном, но она почему-то возвращает хендл какого-то другого окна. В чём проблема не могу понять.
Ссылка на описание функции Вот простой код:
0
|
||||||
|
|
||
| 13.11.2021, 12:16 | ||
|
Найденный дескриптор идентифицирует окно ниже определяемого окна в Z - последовательности. Ваше окно может быть вообще в другом углу экрана.
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 13.11.2021, 12:36 | ||
|
Может быть я неправильно понимаю Z - последовательность ?
0
|
||
|
|
||
| 13.11.2021, 13:40 | ||
![]() Запустите подряд 5 калькуляторов. Повозите над ними своё окно. Чувствуете, что окон много, а нижнее в Z - последовательности только одно?
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|
| 13.11.2021, 13:45 | |
|
А как же тогда мне правильно узнать дескриптор окна, находящийся под созданным нами окном ?
0
|
|
|
|
|
| 13.11.2021, 15:58 | |
|
А для чего нужно создавать своё окно поверх чужого? Ведь чужое не видно будет!
В теме уже есть простой способ: Функция WindowFromPoint извлекает дескриптор окна, которое содержит заданную точку.
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|
| 13.11.2021, 16:15 | |
|
Верхнее окно можно растягивать и уменьшать, выбирая тем самым область для скриншотов окна, которое находится под ним. То есть, Выбрали область при помощи верхнего окна, закрыли верхнее окно, и потом скриншотим эту область в окне, находящимся под ним. Хендл нужен, чтоб скриншотить это окно даже если оно перекрыто другими окнами.
0
|
|
|
|
||
| 13.11.2021, 17:06 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|
| 13.11.2021, 17:36 | |
|
Сейчас попробую.... )))
Добавлено через 18 минут Эх, у меня-самоучки ещё мало опыта.... Не могу разобраться как работать со структурами. В частности, как правильно здесь применить структуру POINT
0
|
|
|
|
|
| 13.11.2021, 18:40 | |
|
1
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|
| 13.11.2021, 19:48 | |
|
Благодарю, Pro_grammer !!! Сейчас буду пробовать !
Добавлено через 9 минут Всё сработало !!! Ещё раз огромное спасибо за помощь !!!
0
|
|
| 13.11.2021, 19:48 | |
|
Как отследить открытие нового окна в outlook? Как изменить размер чужого окна? Как отследить события на USB? Как предотвратиь появление определенного чужого окна Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store.
И так:
1. Скачиваем с. . .
|