Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.037 c
4-1091009479
Deker
2004-07-28 14:11
2004.09.12
Работа с приложениями в памяти


1-1093337105
LordBTR
2004-08-24 12:45
2004.09.12
Как отловить одновременное нажатие в проге клавиш Ctrl+Alt+S


14-1092983887
Andy BitOff
2004-08-20 10:38
2004.09.12
Кто помнит?


10-1016000720
GenBr
2002-03-13 09:25
2004.09.12
Передача интерфейса


1-1093690153
Vasya.ru
2004-08-28 14:49
2004.09.12
Это меня глючит, или Дельфю?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский