AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TMS TAdvMainMenu

Ein Thema von Walter Landwehr · begonnen am 21. Mär 2014 · letzter Beitrag vom 25. Mär 2014
Antwort Antwort
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
380 Beiträge
 
Delphi 10.4 Sydney
 
#1

TMS TAdvMainMenu

  Alt 21. Mär 2014, 13:56
Hallo,

ich brauche mal Hilfe zu TMS TadvMainMenu. Und zwar möchte ich alle Hautmenüpunkte in ein TTreeView laden. Hauptpunkte und darunter den Zweig der Untermenüs.

In deiner TdxBar habe ich das so gelöst.

procedure FillTheTreeView(dxbBarItemIndex: Integer; Predecessor: TTreeNode; Item: TdxBarItemLink);

wie aber nun mit dem TMS Menü?

Kann mir jemand helfen?

Vielen Dank im voraus.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.250 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: TMS TAdvMainMenu

  Alt 21. Mär 2014, 14:42
Delphi-Quellcode:
   if menu.Items.count>0 then begin
    MenuI:=menu.Items[0]; // Hauptmenu
    TB_Menue.Caption:=MenuI.Caption;
    //
    if menu.Items[0].Count>0 then begin
     // Menüpunkte
     for i:=0 to menu.Items[0].Count-1 do begin
      Menu.Items[i]
....

     end;
    end;
   end;
  end;
  //
  Mit Zitat antworten Zitat
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
380 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: TMS TAdvMainMenu

  Alt 25. Mär 2014, 07:58
Hm, so richtig weitergekommen bin ich noch nicht.

Hier mal mein Ansatz

Delphi-Quellcode:
procedure TBenutzerverwaltungFrm.FormCreate(Sender: TObject);
     var I, J: Integer;
       Node: TTreeNode;
begin

  Node := AdvCheckTreeView1.Items.Add(nil, 'AlleRechte'); // Oberster Eintrag
  Node.ImageIndex := 0;
    if frmMain.Menue.Items.count > 0 then
    begin
      for I := 0 to frmMain.Menue.Items.Count - 1 do
      begin
        If I = 0 then
          Node := AdvCheckTreeView1.Items.AddChild(Node, copy(frmMain.Menue.Items[I].Caption,2,35));
          if frmMain.Menue.Items[I].count > 0 then // bis hier OK
           for J := 0 to frmMain.Menue.Items[I].Count - 1 do
           begin
             If J = 0 then
               Node := AdvCheckTreeView1.Items.AddChild(Node, frmMain.Menue.Items[J].Caption) <-- Hier sollte das erste Untermenü vom ersten Hauptmenü gelesen werden list aber das erste Hauptmenü
             else
               Node := AdvCheckTreeView1.Items.Add(Node, frmMain.Menue.Items[J].Caption)
           end
          else
            Node := AdvCheckTreeView1.Items.Add(Node, copy(frmMain.Menue.Items[I].Caption,2,35))
      end;
end;
Ich schaffe es einfach nicht die Untermenüs auszulesen.

Kann mir jemand helfen.

Danke im voraus.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#4

AW: TMS TAdvMainMenu

  Alt 25. Mär 2014, 09:29
Klar, frmMain.Menue.Items sind ja die Hauptmenü-Items, Davon hat jeder wieder seine Items.

Probiers mal mit

frmMain.Menue.Items[I].Items[J].Caption
  Mit Zitat antworten Zitat
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
380 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TMS TAdvMainMenu

  Alt 25. Mär 2014, 13:29
so nun hab ich es gelöst.

hier mal mein Code:
Delphi-Quellcode:
procedure TBenutzerverwaltungFrm.FormCreate(Sender: TObject);
     var I, J : Integer;
          tnNode: TTreeNode;
           Node : TTreeNode;
begin
  Node := AdvCheckTreeView1.Items.Add(nil, 'AlleRechte');
  tnNode := Node;
  if frmMain.Menue.Items.count > 0 then
  begin
    for I := 0 to frmMain.Menue.Items.Count - 1 do
    begin
      If I = 0 then
        Node := AdvCheckTreeView1.Items.AddChild(Node, copy(frmMain.Menue.Items[I].Caption,2,35))
      else
        Node := AdvCheckTreeView1.Items.AddChild(tnNode, copy(frmMain.Menue.Items[I].Caption,2,35));
      if frmMain.Menue.Items[I].count > 0 then
         for J := 0 to frmMain.Menue.Items[I].Count - 1 do
        begin
           If J = 0 then
             Node := AdvCheckTreeView1.Items.AddChild(Node, frmMain.Menue.Items[I].Items[J].Caption)
          else
            Node := AdvCheckTreeView1.Items.Add(Node, frmMain.Menue.Items[I].Items[J].Caption)
        end;
    end;
  end;
end;
Danke an alle.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz