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

Вниз

Потерять фокус   Найти похожие ветки 

 
Kns   (2007-09-03 15:28) [0]

Добрый день, помогите со сменой фокуса.
Нужно отправить приложение на задний план и сделать активным самое верхнее из окон на экране.
Делаю так

Application.MainForm.SendToBack;
h:=GetTopWindow(0);
Windows.SetFocus(h);

Приложение уходит но фокус не отдает. Почему?


 
Сергей М. ©   (2007-09-03 15:36) [1]


> Почему?
>


Вероятно потому что h = 0


 
Kns   (2007-09-03 15:42) [2]

Нет. H<>0.
вообще опытным путемя выяснил что вместо
Windows.SetFocus(h);
нужно использовать
SetForegroundWindow(h);
Тогда фокус уходит но кому отдается не видно.
Я предпологаю что GetTopWindow(0) возвращает хендл невидмого окна.


 
Сергей М. ©   (2007-09-03 15:49) [3]


> опытным путемя выяснил что вместо
> Windows.SetFocus


И зачем эспериментировать, если логика работы обеих ф-ций описана в справке ?


> предпологаю что GetTopWindow(0) возвращает хендл невидмого
> окна


Это вряд ли)


 
Kns   (2007-09-03 16:03) [4]

Ну насчет SetFocus ошибся не обратил внимания, что в MSDN сказано
The window must be attached to the calling thread"s message queue.
А в остальном вопрос тотже.


h:=GetTopWindow(0);
if h<>0 then
 begin
 Application.MainForm.SendToBack;
 SetForegroundWindow(h);
 end;

Не активирует приложение лежащее сверх.


 
Сергей М. ©   (2007-09-03 16:14) [5]

Возьми на вооружение SpyXX и посмотри что это за окно h


 
Lacmus ©   (2007-09-03 16:39) [6]

>Kns   (03.09.07 15:28)  

Application.Minimize ?



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

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

Наверх




Память: 0.45 MB
Время: 0.039 c
2-1208719740
worldmen
2008-04-20 23:29
2008.05.18
Загрузить с ini файла в переменную имена всех ключей


2-1208841788
vajo
2008-04-22 09:23
2008.05.18
Можно ли сократить запись стороки


2-1208858129
AlexAA
2008-04-22 13:55
2008.05.18
Открыть файл .exe


2-1208339540
DFT
2008-04-16 13:52
2008.05.18
DoMouseWheel


2-1208506836
dmitry_12_08_74
2008-04-18 12:20
2008.05.18
Работа Delphi с базами данных Access





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский