Zweites WinForm aufrufen
-
Hallo,
ich habe zwei Forms (Form1, Form2) und ich möchte nach einem Klick auf einen Button (button1) das zweite Form öffnen.
Ansatz:
private: System::Void button1_MouseClick(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) { Form2 f2 = new Form2(); f2 = ShowDialog(); }
Aber leider ist es doch nicht so einfach, was muss ich noch hinzufügen damit es funktioniert ?
Gruß
Schattenfang
-
Form^ _newForm = gcnew Form2(); _newForm->ShowDialog();
-
Doug_HH schrieb:
Form^ _newForm = gcnew Form2(); _newForm->ShowDialog();
==> error C2061: Syntaxfehler: Bezeichner 'Form2'
-
Ähhh!?
#include "Form2.h"
-
Doug_HH schrieb:
Form^ _newForm = gcnew Form2(); _newForm->ShowDialog();
Danke, hat so einwandfrei funktioniert.
Aber könntest du mir bitte noch kurz erklären was ^ und _ in diesem Fall bedeuten ? (reguläre Ausdrücke?)
-
Das ^ wird Dach genannt, durch dieses Zeichen wird die Vereinbarung auf den Heap abgelegt.
Aber nicht auf den verwalteten Heap, da werden nur Vereinbarungen mit gcnew abgelegt.
Der String^, Int16^, Int32^ usw. werden nicht auf dem Stack abgelegt, sondern wie schon gesagt auf den Heap.Gruß Doug_HH
-
Und wie funktioniert dann bei dem zweiten Form die Rückgabe an das erste? Wenn ich beispielsweise im 2. Form 3 Auswahlfelder habe (Einstellungen) und diese dann zurück an das Hauptprogramm liefern will ?
-
ein tutorial mit grund techniken wäre jetzt von vorteil