![]() |
Weitere Forms nach schließen leeren
Moin Moin
denke mal langsam nerve ich :wiejetzt: aber einige sachen finde ich leider nicht durch suchen :( Ich habe Ein Form --> Form1 von dem 6 weitere Forms geöffnet werden, funktioniert auch ohne Probleme, nur wenn ich jetzt sagen wir mal Form7 öffnen, dort was mache es wieder schließe und wieder öffne, dann ist das Form nicht im "urzustand" sondern das was ich da mal eingegeben habe ist noch vorhanden. Wie kann man das umgehen ? also quasi resetten ? |
Re: Weitere Forms nach schließen leeren
Hallo!
Erzeuge die Forms dynamisch und gib sie beim Beenden wieder frei. Dann findest du bei jedem weiteren Anzeigen der Forms wieder den "urzustand" vor. |
Re: Weitere Forms nach schließen leeren
Du kannst ja im OnClose des Form7 einfach alle Daten in den "Urzustand" zurückversetzen (also Komponenten wieder richtig setzen, Variablen zurück etc.) ;)
|
Re: Weitere Forms nach schließen leeren
Zitat:
|
Re: Weitere Forms nach schließen leeren
mmm dynamisch erzeugen ? wie soll das denn funktionieren ?
ich meine wie habe ich dort vorzugehen |
Re: Weitere Forms nach schließen leeren
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
schaue dir mal mein Beispiel im Anhang an. Dabei solltest Du dir auch ansehen das ich nur die "MainForm" beim Programmstart erzeuge (Menü: Projekt - Optionen - Formulare). |
Re: Weitere Forms nach schließen leeren
kann ich doch nicht, ich habe doch Lazarus, aber da gibt es diese Option auch
Was muß ich jetzt da machen ? Links Stehen jetzt 7 Forms udn alle sind blau markiert, rechts ist das gesammte feld leer ich vermute mal das ich dort alles außer Form1 reinverschieben muß oder ? und dann dann ich den aufruf des fensters wie gewohnt mit Form7.ShowModal aufrufen ? will da nix falschmachen, nicht das nachher das gesamte Projekt hinüber ist |
Re: Weitere Forms nach schließen leeren
Zitat:
Du musst die Formulare zur Laufzeit erzeugen. Grundsätzlich funktioniert das so:
Delphi-Quellcode:
Im OnClose Event des Formulars setzte Du Action auf caHide.
With TForm7.Create(Application) do
begin Try ShowModal; Finally Release; end; end; |
Re: Weitere Forms nach schließen leeren
Also lass uns das nochmal zusammenfassen
Ich gehe auf Projekt --> Optionen --> Formulare und dort dann alles außer Form1 nach rechts verschieben ? Der Aufruf eines Formulars erfolgt dann so ?
Delphi-Quellcode:
statt:
procedure TForm1.MenuItem32Click(Sender: TObject);
begin With TForm7.Create(Application) do begin Try ShowModal; Finally Release; end; end; end;
Delphi-Quellcode:
und was muß ich jetzt wo noch machen ? also das mit dem caHide ?
procedure TForm1.MenuItem32Click(Sender: TObject);
begin Form7.ShowModal; end; |
Re: Weitere Forms nach schließen leeren
Hallo,
ja - genau so. Achte aber darauf, dass Du im OnClose Event des Formulars Action auf caHide setzt |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 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 by Thomas Breitkreuz