Formular öffnen und schließen
-
Hallo,
ich hab folgendes Problem.Eine Passwortabfrage soll (bei Korrekten eingaben) ein weiteres Formular öffnen und sein Formular dann schließen.
Damit die Abfrage als erstes geöffnet wird muss es als Hauptformular definiert sein.
Wenn ich jetzt aber das neue Formular öffne (was auch funktioniert) und das Abfrage Formular (Hauptformular) schließe, beendet sich das ganze Programm.Wie kann ich das umgehen???
danke
-
schau du musst es net als hauptformular machn ...
Du machst das Hauptformular und rufst nen Passwortfenster im Ctor des Hauptformulars auf . wen ndas passwort richtig machst das passwortfenster mit close zu wenn falsch machst das programm mit aplication->terminate zu ..
nur nen hint
-
"Gut beim Programmieren: Erst Gehirn einschalten..."
Wieso nimmst du denn auch das Teil als Hauptformular???
Das Hauptformular sollte eigentlich immer DAS Formular sein, DASS DIE GANZE ZEIT ANGEZEIGT WIRD...:p
Son Mist du warst schneller
[ Dieser Beitrag wurde am 03.07.2003 um 11:53 Uhr von aaaabyx editiert. ]
-
Gut danke,
ich hab nur net gwusst, dass sich alles schließt, wenn das Hauptformular geschlossen wird....
Und wie kann ich es machen die Abfrage als Teil des Hauptformular zu öffnen?
Oder wie kann ich das Hauptformular sperren, sodass keiner schreiben bzw. lesen kann ???
-
Schau nochmal das Posting von 1ntrud0r an.. da steht was von "im Konstruktor des Hauptformulars"... oder du guggst halt mal in die FAQ....
-
Was ist ein Ctor des Hauptformulars ? In den FAQs ist nichts unter "Ctor" zu finden...
-
Ctor --> Konstruktor
-
wenn du die passwort eingabe nach der eingabe einach hiden tust wird es auch reichen.
-
Ok, des klingt logisch....
Also ich hab in den Konstruktor meines Hauptformulars geschrieben....
Form2->Show();
daraus folgt ein Fehler....
-
Du kannst den Konstruktor (oder das OnCreate-Event) der Hauptform nicht zum normalen Anzeigen der anderen Forms benutzten, da diese zu diesem Zeitpunkt noch nicht erzeugt wurden.
Du musst also selbst eine eigene Instanz der Passwortform erzeuge und diese anzeigen.
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { TForm2 *f2 = new TForm2(this); f2->ShowModal(); delete f2; }
-
Das Stichwort ist hier: f2->ShowModal();
-
Nach etwas rum probieren und der hilfe funktionierts....
danke
-
Original erstellt von <Tom ludwig>:
**Nach etwas rum probieren und der hilfe funktionierts....danke**
Einer der unsre guten Ratschläge wahr genommen hat