![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
программа должна узнать какое окно было активным [D7]
SKIPtr © (2014-01-07 19:37:00)у меня программа оно в определеное время показывает окно с сообщением
и при этом она должна узнать какое окно было активным до этого
как это лучше сделать
SKIPtr (2014-01-09 20:11:00) [1]спасибо за подсказки
вот интересный вариант с WM_WINDOWPOSCHANGING
просто оно перехватит сообщение к окну
я думал что можно просто узнать окно в Z порядке
оно там будет находиться в определеном месте
но может это еще сложней
Юрий Зотов (2014-01-08 15:08:00) [2]Посмотрите сообщение WM_ACTIVATE
DVM (2014-01-07 23:36:00) [3]
> но есть возможность как то узнать какое окно было активным
> после того как мое окно уже запустилось
в lparam WM_WINDOWPOSCHANGING сообщения, что приходит всегда окну перед изменением его положения есть структура WINDOWPOS, там есть поле hwndInsertAfter там по идее должен быть хэндл окна которое перекрывает вновь создаваемое окно.
Другой способ контролировать все окна WH_SHELL ловушками.
SKIPtr (2014-01-07 23:08:00) [4]я думаю я смогу использовать GetForegroundWindow
но есть возможность как то узнать какое окно было активным после того как мое окно уже запустилось
DVM (2014-01-07 19:45:00) [5]
> и при этом она должна узнать какое окно было активным до
> этого
GetActiveWindow или GetForegroundWindow вызвать до показа этого окна с сообщением?