Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi MDI-Child Form ein zweites mal öffnen (https://www.delphipraxis.net/152695-mdi-child-form-ein-zweites-mal-oeffnen.html)

Eppos 2. Jul 2010 08:31

MDI-Child Form ein zweites mal öffnen
 
Guten Tag zusammen,

ich habe ein kleines Programm geschrieben, bei dem sich User verschiedene Forms als Child öffnen lassen können.
Wie kann ich dann, ein bereits geöffnetes Fenster, an einer anderen Stelle nochmals anzeigen, ohne das
bereits bestände zum benutzen?

Eppos

Deep-Sea 2. Jul 2010 08:33

AW: MDI-Child Form ein zweites mal öffnen
 
Einfach eine weitere Instanz der Formular-Klasse erzeugen. Aber bitte nicht die Referenzvariable der ersten Instanz überschreiben :wink:

Sybok Factor 2. Jul 2010 08:36

AW: MDI-Child Form ein zweites mal öffnen
 
Hallo Eppos,

du musst eine weitere Instanz von dem Fenster erzeugen, zum Beispiel mit
Delphi-Quellcode:
Application.CreateForm(TMeineForm, MeineForm)
. Die Formularinstanzen werden dann durchnummeriert: MeineForm1, MeineForm2, etc.

Ok, da war jemand schneller...

Viele Grüße
Sybok

Eppos 2. Jul 2010 08:37

AW: MDI-Child Form ein zweites mal öffnen
 
kannst du mir ein kleines Beispiel posten?

Deep-Sea 2. Jul 2010 09:32

AW: MDI-Child Form ein zweites mal öffnen
 
Delphi-Quellcode:
// 10 Fenster erzeugen
For I := 1 to 10 do
  TMeinMDIChild.Create(Application);
Du musst nur dafür sorgen, dass sie auch wieder freigegeben werden. Wenn du es so wie im Beispiel machst, bietet es sich an im OnClose der Child-Form den Wert Action auf caFree zu setzen.


Nachtrag: Schlagt mich nicht, wenn ich Mist erzähle ... schon so lange nix mehr von MDI gehört ... ist halt nicht mehr in Mode ^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:17 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