Visual Studio 2008: Problemlösung und allgemeine Windows-Forms-Frage



  • Das klappt nicht so ganz...
    Zum öffnen des Fensters folgende Meldungen:

    e:\dokumente und einstellungen\philipp\desktop\eisenbahn-manager\eisenbahn-manager\Starter.h(153) : error C2065: 'Form1' : undeclared identifier
    e:\dokumente und einstellungen\philipp\desktop\eisenbahn-manager\eisenbahn-manager\Starter.h(153) : error C2228: left of '.Show' must have class/struct/union
    e:\dokumente und einstellungen\philipp\desktop\eisenbahn-manager\eisenbahn-manager\Starter.h(153) : error C2143: syntax error : missing ';' before '.'

    Die letzte sogar mehrfach für diese Zeile
    Zum schließen diese:

    e:\dokumente und einstellungen\philipp\desktop\eisenbahn-manager\eisenbahn-manager\Starter.h(153) : error C2143: syntax error : missing ';' before '.'

    Ebenfalls mehrfach...

    mfg
    Mr X



  • Na Form1 muss bekannt sein und bei Zeigern musst Du -> einsetzen, nicht .



  • Na Form1 muss bekannt sein

    Wie mache ich die den bekannt?

    bei Zeigern musst Du -> einsetzen, nicht .

    😮 Das war meine eigene Doofheit 😮 Danke dass du mein Brett vorm Kopf(teilweise weggehauen hast...

    mfg
    Mr X



  • Naja, Du musst Form1 includieren. Wenn Du aber nichts spezielles von der Form verwendest, kannst Du auch eine Variable System::Windows::Forms::Form deklarieren und die Instanz von Form1 so an die zweite Form übergeben.

    Schau auch mal in die FAQ: Werte zwischen 2 Forms tauschen. Da findest Du auch noch wertvolle Hinweise zu dem Thema.



  • 😕 Irgendwie versteh ich das nicht so wirklich was im FAQ stand. 😕
    Und das ersetzen des Punktes durch einen -> brachte nur neue Fehlermeldungen von wegen Form1 is not a member of projektX::Starter
    Ich habe Form1.h jdoch included. Was mache ich falsch?



  • Das wird man ohne weitere Informationen nicht wirklich sagen können.

    Liegt Form1 denn im gleichen Namensraum ?
    Wie gibst Du Form1 an ?
    Verwendest Du auch eine Instanz von Form1 ?



  • Also... Das öffnen einer anderen Form klappt nun...Danke für die Hilfe.
    Doch das schließen des alten Fensters funktioniert noch nicht. Es gibt nur Fehlermeldungen...
    Ich möchte nicht alles schließen, denn das würde ich hinkriegen:

    (void)exit(0);
    

    sondern, wenn ein Fenster geöffnet wird, soll ein anderes sich schließen.

    Danke schon im voraus für Hilfe!!!

    mfg
    Mr X



  • Form2^ _NeuesFenster = gcnew Form2;
    _NeuesFenster->Show();
    _NeuesFenster->Close();
    


  • Hier würde das Fenster kurz aufblitzen und gleich wieder geschlossen werden.



  • Ja weiß ich, dass ist doch nur ein Beispiel. 🙄


Anmelden zum Antworten