Registriert seit: 17. Jun 2006
Ort: Bautzen
503 Beiträge
FreePascal / Lazarus
|
Re: SetForegroundWindow vs. CoolTrayIcon.ShowMainForm
27. Apr 2008, 17:09
Falls das hier jmd. interessiert, die Lösung:
Delphi-Quellcode:
repeat
appH := FindWindow(PChar('TMform'), nil);
until appH <> Application.Handle;
if appH <> 0 then
begin
ParentH := GetWindowLong(appH, GWL_HWNDPARENT);
Windows.ShowWindow(appH, SW_Normal);
postmessage(ParentH,WM_SYSCOMMAND,SC_RESTORE,0);
Windows.SetForegroundWindow(appH);
end;
Im OnRestore Ereignis der Anwendung (ApplicationEvents benutzen!) kann man dann festlegen, dass das TrayIcon verschwindet.
Es ist unmöglich, witzig zu sein ohne ein bisschen Bosheit. Die Bosheit eines guten Witzes ist der Widerhaken, der ihn haften lässt. - Georg Christoph Lichtenberg
|