form neuladen
-
hallo zusammen,
ist wahrscheinlich ne ganz doofe anfänger frage, aber wie kann ich ein form neu laden so das es im kompletten anfangszustand ist, ohne das ich jede einzelne variable zurücksetze
probiert habe ich folgendes:
Form1->Close(); Form1->Show();und
Form1->Refresh(); Form1->Show();Das Formular wurde auch jedesmal geladen, aber immer mit dem alten inhalt. (Das neuladen das Formulars mache ich aus einem anderen Formular heraus)
Vielen Dank schonmal
Gruß sw0ce
-
Form1 ^frm1 gcnew Form1(); frm1->ShowDialog();
-
Hi Jochen,
Danke für deine Antwort. Leider muss ich feststellen das ich im falschen board gelandet bin. Mein Fehler. Ich nutze Borland c++ Builder 6.
Wenns möglich ist bitte verschieben
Danke und Gruß sw0ce.
btw: wenn du trozdem die antwort weißt bitte posten ^^ danke
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum VCL/CLX (Borland C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hallo
Um mal Jochens Code für den Builder umzusetzen :
TForm1 *NewForm = new TForm1(Application); NewForm->Show(); // oder NewForm->ShowModal();Das erfordetr aber das du das alte Form schließt und löscht, und du darfst nicht die von der IDE vorbereiteten Pointer und Instanzen von TForm2 benutzen.
Deshalb ist auf jedenfall besser in der Formklasse eine Initialisierungsfunktion zu schrieben die eben manuell jede Variable/Control zurückstetzt.
bis bald
akari
-
Ok das klappt soweit.
dank dir.
kleine frage noch: wie lösche ich das alte form. schließen ist kein thema.
anlegen zur lauzeit mach ich ja mit application->createform. aber löschen? gibt es sowas wie unset oder delete?
-
Hallo
kleine frage noch: wie lösche ich das alte form. schließen ist kein thema.
Mit delete natürlich
anlegen zur lauzeit mach ich ja mit application->createform
Nein das ist für die Laufzeit nicht passend, benutzt lieber wie gezeigt new.
bis bald
akari