Methode zur Form öffnen
-
Hallo ich steh vor einem Problem und komm nicht weiter
Ich möchte gern eine Methode erstellen wo beim öffnen eines neuen Fenster zuschlägt .
Wenn ich diesen Code in Form1verwende geht es
test2 ^form = gcnew test2(); form->StartPosition = FormStartPosition::CenterScreen; form->TopMost = true; form->Activate(); form->ShowDialog();
Ich würde jetzt gern eine Methode erstellen wo mir diesen code abnimmt da ich beim öffnen eines neuen Fenster immer die gleiche Prozedur mache Fenster öffnen auf TopMost setzten und in der Bildschirmitte in Vordergrundbringen möcht .
Wenn ich jedoch diesen Code versuche
void OpenFormdialog ( Form^ Formname ) { Formname ^form = gcnew Formname(); form->StartPosition = FormStartPosition::CenterScreen; form->TopMost = true; form->Activate(); form->ShowDialog(); }
bekomme ich immer diese Fehlermeldung
error C2065: 'form': nichtdeklarierter Bezeichner
kann mir da jemand weiterhelfen ??
-
Gucken wir uns mal diese Beiden Zeilen an:
void OpenFormdialog ( Form^ Formname ) // "Formname" ist also eine Variable
Formname ^form = gcnew Formname(); // Hier wird "Formname" wie ein Typ verwendet
Das kann so nicht richtig sein.
Wenn man den Form-Typ angeben können soll musst du zu generics greifen.
-
Oh !! Ja Formname soll die Übergebene Variable sein ( Name des zu öffneten Fenster)
Und wie könnte so was aussehen mit dem Generic ?
Ist grad ziemliches neuland für mich
-
Übergeb doch den Typ... Type
Du kannst es natürlich auch mit Generics machen, aber irgendwo musst Du den Typ ja angeben...