2016-09-06 3 views
-2

Ситуация: Я пытаюсь использовать GetForeground() в Windows Function, чтобы получить текущее окно переднего плана.WinAPI, получить выбранное/активное окно на мыши слева?

Проблема: Однако передняя панель не обновляется в ОС до тех пор, пока не будет отправлено сообщение LEFT MOUSE UP, но мне нужно получить ее на LEFT MOUSE DOWN. Я бы предположил, что это новое окно переднего плана, потому что когда я МЫШЬ ВНИЗ, он выбран, и я могу перемещать окно вокруг, но это не так. Я не могу найти никаких других методов в функции Windows, которые я мог бы использовать, чтобы получить текущее активное окно. Я попробовал GetActiveWindow(), но дескриптор всегда равен 0.

+2

Какие проблемы вы действительно пытаетесь решить? Возможно, вызов «GetForegroundWindow» - это неправильное решение. – IInspectable

+0

Я хотел бы получить ручку окна, которое активно использую. Например, я бы нажал левой кнопкой мыши на проводнике файлов (панель заголовка) на окнах, это окно теперь выбрано, и я могу перемещать его. Однако я не могу получить идентификатор дескриптора. Я бы предположил, что когда я выйду из мыши, окна будут установлены в качестве нового окна переднего плана, поэтому под названием GetForeground() я получу дескриптор. но я этого не делаю. –

+0

Вы только что повторили свой вопрос, но не ответили, что вы в конечном итоге пытаетесь выполнить. Почему, по-вашему, вам нужно знать окно переднего плана в левой кнопке мыши? Что вы собираетесь делать с этой информацией? – IInspectable

ответ

Смежные вопросы