![]() |
Minimiertes Fenster nach Botschaft anzeigen
Hmm.. Ich bin nicht sicher, ob hier das richtige Forum ist. :gruebel:
Naja, ich erzähle einfach mal, was das Problem ist: Von meinem Programm darf immer nur eine Instanz laufen. Startet man eine zweite, so wird eine Botschaft mit dem 1. Parameter an die erste geschickt, damit diese sich um die entsprechende Datei kümmert. Das übliche halt. Jetzt möchte ich aber, dass die erste Instanz nach Erhalt der Botschaft wieder sichtbar wird, falls sie minimiert ist. Ich dachte eigentlich, dass das trivial wäre, aber aus irgendeinem Grund ist es das nicht. Kurzum, ich kriege es nicht hin. Hier der Code mit der Reaktion auf die Botschaft:
Delphi-Quellcode:
Wo ist der Trick?
procedure TMeinForm.WMCopyData(var Message: TWMCopydata);
var s : Array[0..255] of Char; begin Application.BringToFront; // nützt nichts MeinForm.Show; // funktioniert auch nicht MeinForm.SetFocus; // und das erst recht nicht MeinForm.WindowState:=wsNormal; // das ebenfalls nicht FlashWindow(Application.Handle, True); // das geht zwar, ist aber nicht, was ich will StrLCopy(s, Message.CopyDataStruct.lpdata, Message.CopyDataStruct.cbdata); if s<>'' then MachWas(s); end; |
Re: Minimiertes Fenster nach Botschaft anzeigen
Hab das gleiche auch schon mal verwirklicht. Wenn die Hauptanwendung minimiert ist funktionierts so:
Delphi-Quellcode:
schöne Signatur haste :gruebel: Naja, recht haste ja damit aber irgend nen motto braucht ich ja auch
procedure TBlaBla.Bringhoch(var Message: TMessage);
begin Application.Restore; end; |
Re: Minimiertes Fenster nach Botschaft anzeigen
Restore... Da hätte man auch selbst drauf kommen können. :wall:
Funktioniert. Danke. Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz