Вниз
Скачать: CL | DM;

Вопрос по окнам   Найти похожие ветки 

 
Senti   (2004-07-31 12:49) [0]

Столкнулся с проблемой и не могу решить.

Есть иконка  в трее и само окно.
Нужно сделать так, чтобы при нажатии на иконку окно сворачивалось в трей или выводилось на передний план.
Если окно перекрывают другие окна или окно свернуто, тогда вывести окно на передний план, если окно находится на переднем плане, тогда свернуть в трей.

Все бы было хорошо, но при нажатии на иконку в трее процедура GetForegroundWindow выдает Handle трея  и даже если окно находится на переднем плане, то определить не получается.

Как можно определить окно на переднем плане или его перекрывают другие (исключая трей) ?


 
Senti   (2004-07-31 17:51) [1]

Я частично решил проблему. Установил таймер в 100 мс, который запоминает последнее активное окно и исключает трей.
потом идет проверка на последнее активное окно.

Все работает хорошо... Но есть маленький нюанс. Если окно на экране, но прежде работал с другими окнами и все их свернул. Осталось мое окно, но оно не активное. То этот метод не срабатывает, он думает что сверху моего окна есть другие..
Как получить окно, которое действительно поверх всех оно может быть активным и не активным.


 
GuAV ©   (2004-07-31 19:24) [2]

WindowFromPoint ?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.032 c
3-1092818243
nv_
2004-08-18 12:37
2004.09.12
ADOConnection: Как создать *.udl?


3-1092811882
Belkova
2004-08-18 10:51
2004.09.12
связь с сервером


4-1090486416
parovoZZ
2004-07-22 12:53
2004.09.12
Win98 и Delphi7


14-1092977204
Рамиль
2004-08-20 08:46
2004.09.12
Ведение реестра акционеров эмитентом


4-1091311946
BaG
2004-08-01 02:12
2004.09.12
Автоматическое включение компьютера




   Наверх