the incredible Leitman
Erfahrenes Mitglied
Hallo erstmal liebe Tutorials.de user ^^
Und alles Gute im neuen Jahr
Ich habe nun seit knapp 5 Stunden alles mögliche über mein Problem gesucht, leider aber nichts gefunden, das mir irgendwie weiterhelfen könnte... vl fehlen mir einfach noch ein paar Grundkenntnisse, was das angeht...
also, ich habe eine Anwendung, die mehrere Tab Controls mit mehreren Tab Pages öffnet...
Nun möchte ich auf diesen Tab Pages gewisse Controls platzieren und zwischen diesen auch Funktionalitäten implementieren...
Leider komme ich mit dem Erstellen und Zuweisen der Controls noch nicht ganz klar...
Ich brauche z.B. ein Label, das mir die Zeit anzeigt...
Dieses Label soll in jeder einzelnen TabPage, rechts oben angezeigt werden und durch ein Event aufgefordert werden sich zu aktualisieren...
also ein Timer sagt jede Sekunde label->getTime() // Pseudocode ^^
Nun weiß ich aber nicht genau, wie ich dieses Label auf die Form (TabPage) bringe
Muss ich da für jede einzelne Page in jedem einzelnen Control ein eigenes Label erstellen? Oder wie kann ich lediglich einen Verweis auf dieses Label adden?
Ich habe schon einiges probiert, bin aber auf keine Lösung gestoßen:
==> so gehts nicht, error C2440!
wenn ichs vorher in ein Label casten versuche -> error C2664
somit erstelle ich für jede TabPage ein neues Label
so wird das eine Label immer neu instanziert
und wenn ich überhaupt nur vorher ein Label erstelle, dass ich dann in die Tabs hinzufüge will:
wir immer nur in der allerletzen Page das Label geadded -.-
Bitte, ich verstehs nicht... ich dachte, wenn ich ein Control in eine Form adde, wir nur die Referenz genommen? Wieso kann ich dasselbe Control dann nicht woanders auch adden
ich erstelle mit "Label ^label" ja noch kein Label oder? ich reserviere lediglich den Speicher für ein Object oder?
erst wenn ich "label = gcnew Label()" definiere, wird ein Label erstellt, stimmt das?
Wie kann ich das lösen, z.B., auch wenn ich eine Listbox (oder irgendwas, in dem Datengespeichert werden können) habe,
dass ich zum Beispiel in einer Page auf diese ListBox zugreife,
und dieselbe ListBox in einer anderen Form aktualisiert wird
Ich glaube mit fehlt hierbei noch ein wesentlicher Bestandteil um das komplett zu verstehen... ich wüßte aber nicht einmal, wonach ich genau suchen sollte?
Fällt das unter Intitalierung / Deklaration / Speicherassoziierung
Und alles Gute im neuen Jahr

Ich habe nun seit knapp 5 Stunden alles mögliche über mein Problem gesucht, leider aber nichts gefunden, das mir irgendwie weiterhelfen könnte... vl fehlen mir einfach noch ein paar Grundkenntnisse, was das angeht...
also, ich habe eine Anwendung, die mehrere Tab Controls mit mehreren Tab Pages öffnet...
Nun möchte ich auf diesen Tab Pages gewisse Controls platzieren und zwischen diesen auch Funktionalitäten implementieren...
Leider komme ich mit dem Erstellen und Zuweisen der Controls noch nicht ganz klar...
Ich brauche z.B. ein Label, das mir die Zeit anzeigt...
Dieses Label soll in jeder einzelnen TabPage, rechts oben angezeigt werden und durch ein Event aufgefordert werden sich zu aktualisieren...
also ein Timer sagt jede Sekunde label->getTime() // Pseudocode ^^
Nun weiß ich aber nicht genau, wie ich dieses Label auf die Form (TabPage) bringe
Muss ich da für jede einzelne Page in jedem einzelnen Control ein eigenes Label erstellen? Oder wie kann ich lediglich einen Verweis auf dieses Label adden?
Ich habe schon einiges probiert, bin aber auf keine Lösung gestoßen:
C++:
this->tabPage->Controls->Add(&Label);
wenn ichs vorher in ein Label casten versuche -> error C2664
C++:
// Pseudocode
...
array<TabControl ^> ^m_tabs;
array<TabPage ^> ^m_pages;
...
for each (TabControl ^tc in this->m_tabs)
{
for each (TabPage ^tb in this->m_pages
{
Label ^label = gcnew Label();
...
tb->Controls->Add(label);
}
}
C++:
// Pseudocode
...
array<TabControl ^> ^m_tabs;
array<TabPage ^> ^m_pages;
...
Label ^label;
for each (TabControl ^tc in this->m_tabs)
{
for each (TabPage ^tb in this->m_pages
{
label = gcnew Label();
...
tb->Controls->Add(label);
}
}
und wenn ich überhaupt nur vorher ein Label erstelle, dass ich dann in die Tabs hinzufüge will:
C++:
// Pseudocode
...
array<TabControl ^> ^m_tabs;
array<TabPage ^> ^m_pages;
...
Label ^label = gcnew Label();
for each (TabControl ^tc in this->m_tabs)
{
for each (TabPage ^tb in this->m_pages
{
...
tb->Controls->Add(label);
}
}
Bitte, ich verstehs nicht... ich dachte, wenn ich ein Control in eine Form adde, wir nur die Referenz genommen? Wieso kann ich dasselbe Control dann nicht woanders auch adden

ich erstelle mit "Label ^label" ja noch kein Label oder? ich reserviere lediglich den Speicher für ein Object oder?
erst wenn ich "label = gcnew Label()" definiere, wird ein Label erstellt, stimmt das?
Wie kann ich das lösen, z.B., auch wenn ich eine Listbox (oder irgendwas, in dem Datengespeichert werden können) habe,
dass ich zum Beispiel in einer Page auf diese ListBox zugreife,
und dieselbe ListBox in einer anderen Form aktualisiert wird
Ich glaube mit fehlt hierbei noch ein wesentlicher Bestandteil um das komplett zu verstehen... ich wüßte aber nicht einmal, wonach ich genau suchen sollte?
Fällt das unter Intitalierung / Deklaration / Speicherassoziierung
Zuletzt bearbeitet: