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

Окошко, не желающее становиться активным   Найти похожие ветки 

 
jel ©   (2002-10-15 17:15) [0]

Проблема проста до идиотизма. Сворачиваю программку в трей, обрабатывая WM_SysCommand. То бишь прячу форму и кнопку на таскбаре. Потом из обработчика сообщения NotifyIcon пытаюсь развернуть обратно. Результат - окошко восстанавливается но не на переднем плане а за остальными окнами. Нужно вытащить его наверх. Пишу


if a.LParam = 514 then begin // знаю - константа в тексте некрасиво (это отпускание левой кнопки мыши)
TrayHideIcon; // здесь убираю иконку из трея
ShowWindow(Application.Handle, SW_SHOWNORMAL);
ShowWindow(handle, SW_SHOWNORMAL);
SetForegroundWindow(handle); // а вот тут - только начинает мигать кнопка на таскбаре - окно не всплывает!
// SetWindowPos(Handle, HWND_TOP, 0,0,0,0, SWP_NOSIZE + SWP_NOMOVE); // пробовал еще так
// BringWindowToTop(handle); // и вот так
// SendMessage(handle, WM_SYSCOMMAND, SC_RESTORE, 0); // и сяк - результат нулевой
end;
a.Result := 0;


Где грабли-то? Чего я не сделал или сделал не так?
Заранее спасибо.


 
Jel ©   (2002-10-15 17:23) [1]

Простите великодушно! Не в тот форум написал. Не судите строго за оффтопик. :)



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

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



Память: 0.45 MB
Время: 0.013 c
4-28372
serd_hhc
2002-10-26 04:36
2002.12.09
Как узнать хэндл...


1-27997
down
2002-11-29 19:50
2002.12.09
TPrintDialog, выбранный принтер


14-28267
VEG
2002-11-18 20:47
2002.12.09
Наш любимый чат...


6-28186
AlexMain
2002-10-10 21:56
2002.12.09
Как положить письмо сразу на POP3 без SMTP?


14-28207
lak
2002-11-12 15:59
2002.12.09
дфижки форумов #2




   Наверх