Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - erstellen eines MDIChild Formular nur 1 mal zulassen
Fighti - Di 31.08.04 10:54
Titel: erstellen eines MDIChild Formular nur 1 mal zulassen
Hallo,
wie kann ich abfangen das nur eine Instanz eines MDIChild-Formular erstellt werden kann? Also jedes MDIChild nur einmal geöffnet werden kann.
Für alle Tipps vielen Dank.
mfg Fighti
Viper - Di 31.08.04 11:03
Guten Morgen.
Du hast in deinem Hauptformular ein Array, dass alle bisher erstellten MDIChildren enthält. Da musst du dann nur abfragen, ob schon ein Children vom selben Typ, wie das zu erstellende, existiert oder nicht.
Beispiel:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| var i: integer; Exists: Boolean; begin Exists := False; for i := 0 to MainForm.MDIChildCount - 1 do begin if MainForm.MDIChildren[i] is TTestChild then begin Exists := True; Break; end; end;
if not Exists then end; |
Fighti - Di 31.08.04 14:47
@Viper: vielen dank für deinen Tipp. das hat mir sehr weiter geholfen.
gruss fighti
Viper - Di 31.08.04 17:16
Hallo.
Freut mich, dass ich dir helfen konnte. Hab aber gerade noch einen Fehler entdeckt.
Es muss so heißen, sonst bekommst du einen Fehler:
Quelltext
1:
| for i := 0 to MainForm.MDIChildCount - 1 do |
Habe es oben natürlich auch verbessert.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!