dxBarManagerToDxNavBar方法
1 //根据dxBarManager 的菜单生成 TdxNavBar菜单 2 procedure TfrmMain.GenerateNavBarFromBarManager(dxBarManagerBar: TdxBar; dxNavBar: 3 TdxNavBar); 4 var 5 i, j: Integer; 6 group: TdxNavBarGroup; 7 dxBarItem: TdxBarSubItem; 8 bar: TdxNavBarItem; 9 begin 10 // 确保 TdxNavBar 清空 11 dxNavBar.Groups.Clear; 12 for i := 0 to dxBarManagerBar.ItemLinks.Count - 1 do 13 begin 14 if dxBarManagerBar.ItemLinks[i].Visible = true then 15 begin 16 if dxBarManagerBar.ItemLinks[i].Item is TdxBarSubItem then 17 begin 18 dxBarItem := TdxBarSubItem(dxBarManager1Bar1.ItemLinks[i].Control.Item); 19 group := dxNavBar.Groups.Add; 20 group.Caption := dxBarItem.Caption; 21 for j := 0 to dxBarItem.ItemLinks.Count - 1 do 22 begin 23 if dxBarItem.ItemLinks.Items[j].Visible = True then 24 begin 25 if (dxBarItem.ItemLinks.Items[j].Item is TdxBarButton) then 26 begin 27 bar := dxNavBar.Items.Add; 28 bar.Caption := dxBarItem.ItemLinks.Items[j].Caption; 29 bar.OnClick := dxBarItem.ItemLinks.Items[j].Item.OnClick; 30 bar.SmallImageIndex := 0; 31 group.CreateLink(bar); 32 end; 33 end; 34 end; 35 end; 36 end; 37 end; 38 end;