MainMenu dynamisch erstellen
-
Ich will abhängig von gewissen Datenbankeneinträgen Menupunkte erstellen, was also logischerweise erst zur Laufzeit funzt.
Aber irgendwie funzt das net(er zeigt garnix an):TMenuItem* blubb = new TMenuItem(this); blubb -> Caption = "autogenieriert"; blubb -> Visible = true; TMenuItem* blubb2 = new TMenuItem(blubb); blubb2 -> Caption = "untermenu1"; blubb2 -> Visible = true; TMenuItem* blubb3 = new TMenuItem(blubb); blubb3 -> Caption = "untermenu2"; blubb3 -> Visible = true; TMenuItem* blubb4 = new TMenuItem(blubb); blubb4 -> Caption = "untermenu3"; blubb4 -> Visible = true;
-
blubb -> Parent=this;
-
Ja, das habich auch gedacht aber
[C++ Fehler] Unit3.cpp(500): E2034 Konvertierung von 'TForm3 * const' nach 'TMenuItem *' nicht möglich Vollständiger Parser-Kontext Unit3.cpp(496): Analyse von: void _fastcall TForm3::Button1Click(TObject *)
und wenn ich versuche denselben parent zu nehmen (
blubb -> Parent=Datei1->Parent; ) wie ein andres TMenuItem dann kommt[C++ Fehler] Unit3.cpp(500): E2247 Zugriff auf 'TMenuItem::Parent' nicht möglich Vollständiger Parser-Kontext Unit3.cpp(496): Analyse von: void _fastcall TForm3::Button1Click(TObject *)
Ich hab irgendwie die Vermutung das ich mien TMainMenu mitspielen lassen muss
[ Dieser Beitrag wurde am 19.05.2003 um 10:39 Uhr von dreaddy editiert. ]
-
Aha, man muss die Dinger über Items -> Add hinzufügen... ich weiss zwar immernochnet wie ich Untermenupunkte hinzufügen kann, aber ma schaun ^^
TMenuItem* blubb = new TMenuItem(this); blubb -> Caption = "autogenieriert"; blubb -> Visible = true; MainMenu1->Items->Add(blubb); TMenuItem* blubb2 = new TMenuItem(blubb); blubb2 -> Caption = "untermenu1"; MainMenu1->Items->Add(blubb2); TMenuItem* blubb3 = new TMenuItem(blubb); blubb3 -> Caption = "untermenu2"; MainMenu1->Items->Add(blubb3); TMenuItem* blubb4 = new TMenuItem(blubb); blubb4 -> Caption = "untermenu3"; MainMenu1->Items->Add(blubb4);
-
Hmmm
TMenuItem::Add
TMenuItem::Insert
TMenuItem::Delete?
-junix
-
hi
TMenuItem* blubb2 = new TMenuItem(this); blubb2 -> Caption = "unterpunkt"; blubb2 -> Visible = true; MainMenu1->Items->Items[0]->Add(blubb2);
mfg pera
-
jo danke, habs auch grad zusammengebastelt bekommen
hier nochma das ganze in funktionierender Form
TMenuItem* hauptpunkt = new TMenuItem(this); hauptpunkt -> Caption = "autogenieriert"; hauptpunkt -> Visible = true; MainMenu1->Items->Add(hauptpunkt); TMenuItem* unterpunkt1 = new TMenuItem(hauptpunkt); unterpunkt1 -> Caption = "untermenu1"; TMenuItem* unterpunkt2 = new TMenuItem(hauptpunkt); unterpunkt2 -> Caption = "untermenu2"; TMenuItem* unterpunkt3 = new TMenuItem(hauptpunkt); unterpunkt3 -> Caption = "untermenu3"; hauptpunkt->Insert(0,unterpunkt1); hauptpunkt->Insert(1,unterpunkt2); hauptpunkt->Insert(2,unterpunkt3);
-
Original erstellt von dreaddy:
jo danke, habs auch grad zusammengebastelt bekommenProgrammierer basteln nicht, sie entwickeln (o;
-junix
-
-
Original erstellt von junix:
Programmierer basteln nicht, sie entwickelnOder sie sehen in der Hilfe nach und entnehmen den Beispielen dort Code "in funktionierender Form".
-
nakomm, der Unterschied zwischen basteln und entwickeln besteht lediglich in dem Anteil "rumprobieren", ich kann jetzt aber nicht genau sagen was mehr davon hat
Aber jetzt findich das Beispiel auch grade
das wurde bestimmt von fiesen Moderatoren vor wenigen Minuten auf meinem PC gebeamt um mich zu ärgern.
-
*g*
@junix: mach den Beamer aus
-
Original erstellt von AndreasW:
@junix: mach den Beamer aus... scccchhhhttttt Andreassss!!! Nicht verraten!!
Ausserdem... wieso kommst du denn beim Term "von fiesen Moderatoren" ausgerechnet auf mich? Ich bin doch
#define junix lieb_und_nett
(o;
-junix