Linz Erich
Grünschnabel
Hi,
folgende Situation:
Ich habe ein Form (nenne wir es Form1) in VC++ 2005 erstellt, welches "oben" eine Menuleiste besitzt. Sie besitzt zwei Items: "Datei" und "Konfiguration". Anfangs, wenn Form1 startet ist nur Item "Datei" aktiv (Enabled = true) und Item "Konfiguration" ist inaktiv (Enabled = false). Form1 besitzt den namespace: "namespace1". Wenn ich jetzt unter der Rubrik "Datei" auf "Neu" klicke öffnet sich ein neues Form (nenne wir es Form2 mit namespace: "namespace2"). Damit das funktioniert, habe ich in der headerfile "Form1.h" geschrieben:
Form1.h:
Das funktioniert soweit...
Nun soll aber, wenn ich das Form2 mit dem Button "OK" schließe, der Item "Konfiguration" aus Form1 aktiviert werden. Dazu hab ich in "Form2.h" geschrieben:
Form2.h:
Beim Kompilieren bekomme ich als Fehlermeldung:
Form2.h: "error C2871: 'namespace1': Es ist kein Namespace mit diesem Namen vorhanden"
Form2.h: "error C2039: 'toolStripMenuItem_Konfiguration': Ist kein Element von 'namespace2::Form2Form'"
Form2.h: "error C2227: Links von "->Enabled" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden."
Form2.h: "Siehe Deklaration von 'namespace2::Form2Form'"
Frage:
Was mache ich falsch?
Warum erkennt er namespace1 nicht, obwohl ich doch geschrieben habe: "using namespace1" ?
Ich wär über für jegliche Hilfe echt dankbar...
Gruß Linzer
folgende Situation:
Ich habe ein Form (nenne wir es Form1) in VC++ 2005 erstellt, welches "oben" eine Menuleiste besitzt. Sie besitzt zwei Items: "Datei" und "Konfiguration". Anfangs, wenn Form1 startet ist nur Item "Datei" aktiv (Enabled = true) und Item "Konfiguration" ist inaktiv (Enabled = false). Form1 besitzt den namespace: "namespace1". Wenn ich jetzt unter der Rubrik "Datei" auf "Neu" klicke öffnet sich ein neues Form (nenne wir es Form2 mit namespace: "namespace2"). Damit das funktioniert, habe ich in der headerfile "Form1.h" geschrieben:
Form1.h:
C++:
#include "Form2.h"
[...]
namespace namespace1
{ [...]
using namespace2;
[...]
private: System::Void toolStripMenuItem_Neu_Click(System::Object* sender, System::EventArgs* e)
{
Form* form_object = new Form2Form();
form_object->Show();
}
}
Das funktioniert soweit...

Nun soll aber, wenn ich das Form2 mit dem Button "OK" schließe, der Item "Konfiguration" aus Form1 aktiviert werden. Dazu hab ich in "Form2.h" geschrieben:
Form2.h:
C++:
#include "Form1.h"
namespace namespace2
{
using namespace1;
[...]
private: System::Void button_OK_Click(System::Object* sender, System::EventArgs* e) { [...]
this->Close();
this->toolStripMenuItem_Konfiguration->Enabled = true;
}
}
Beim Kompilieren bekomme ich als Fehlermeldung:
Form2.h: "error C2871: 'namespace1': Es ist kein Namespace mit diesem Namen vorhanden"
Form2.h: "error C2039: 'toolStripMenuItem_Konfiguration': Ist kein Element von 'namespace2::Form2Form'"
Form2.h: "error C2227: Links von "->Enabled" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden."
Form2.h: "Siehe Deklaration von 'namespace2::Form2Form'"
Frage:
Was mache ich falsch?
Warum erkennt er namespace1 nicht, obwohl ich doch geschrieben habe: "using namespace1" ?
Ich wär über für jegliche Hilfe echt dankbar...
Gruß Linzer
Zuletzt bearbeitet von einem Moderator: