Einzelnen Beitrag anzeigen

G-Baumstamm

Registriert seit: 9. Jan 2010
63 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: Formular an andere Anwendung binden

  Alt 14. Jul 2012, 23:16
Jetzt muss ich hier doch noch mal nachhaken, sorry.

Da ich keine Möglichkeit gefunden habe, das über nen Event oÄ zu machen, habe ich mir mit einem Timer geholfen, der immer wieder polled, also überprüft, ob eine bestimme Anwendung gestartet wurde (und in diesem Fall meine Application als Child einträgt) und anschließend, ob diese noch läuft, und wenn nicht eigentlich meine Application wieder lösen sollte.

Das krieg ich aber nicht hin. Wenn ich einfach SetParent(Application.Handle,0); aufrufe, passiert irgendwie nichts, also ich sehe im Taskmanager, dass mein Prozess noch läuft, wenn ich alle anderen Fenster wegschiebe sehe ich auch mein Fenster noch, aber es wird nicht mehr in der Taskleiste oder im Tray angezeigt, man kann es als Anwender also nicht mehr richtig benutzen.

"Workaround" von mir ist momentan, die Application in diesem Fall einfach neu zu starten, läuft zwar, hat aber einige Nachteile. Größter davon ist sicherlich, dass ich nicht verhindern kann, das 2 Instanzen meiner Anwendung gleichzeitig laufen (was ich gerne würde), da für einen kurzen Moment ja tatsächlich 2 offen sein müssen ... außerdem ist das sicherlich stiltechnisch ziemlich unschön.

Lange Rede kurzer Sinn, wie gebe ich meine Application wieder "zurück", nachdem ich sie für ne Weile irgendwo als Child eingetragen hatte ?

(Hinweis: Ich weiß nicht ob das richtig ist, aber ich benutze bewusst Application.Handle und nicht das Handle einer Form. Ich habe 2 Forms, und wenn ich das Handle einer dieser Forms nehme funktioniert es nicht richtig, sie wird dann nicht vernünftig als Child angezeigt sondern flackert allenfalls ein bisschen und ist sonst garnicht zu sehen.)
Daniel NR
  Mit Zitat antworten Zitat