Einzelnen Beitrag anzeigen

IngoD7

Registriert seit: 16. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Unabhängige neue TForm erzeugen

  Alt 19. Mär 2007, 17:43
Zitat von berens:
Ich habe eine TForm (Form2) die zu Programmstart in einem anderem Form (Form1) liegt. Bei Bedarf soll diese jedoch auch so verwendet werden können, dass ich Form2 als eigenständiges Fenster (auch in Taskleiste sichtbar) habe und auch noch sehen kann, wenn ich Form1 minimiere (normalerweise werden alle "Client"-Forms mit minimiert...).
Unabhängig von der eigentlichen Frage würde ich in jedem Fall die Application (oder meinetwegen das Hauptform Form1) dem Konstruktor als Owner übergeben!

Du kannst dein Form "eigenständig" anzeigen lassen, indem du folgendes machst:
Delphi-Quellcode:
DeinForm.Parent := nil;
DeinForm.ParentWindow := GetDesktopWindow;
Danach verhält es sich aber nicht mehr unbedingt so, wie es sich zuvor verhalten hat. Möglicherweise muss die Eigenschaft ControlStyle auch angepasst werden (z.B. bei TButton nötig, wenn man ihn auf den Desktop legt und weiterhin seine Klicks in der Ursprungsanwendung empfangen möchte). Vielleicht muss auch an anderen Stellen noch eingegriffen werden.

Daher ist diese "Lösung" hier lediglich ein Ansatz.
  Mit Zitat antworten Zitat