用dxBarManager做的主菜单,界面左侧有DxNavBar,根据dxBarManager菜单项生成DxNavBar,其中DxNavBar中的单击代码怎么从dxBarManager中延续过来呢?
--------------------------------------
procedure TFrmMain.dxBarManagerToDxNavBar;
var
  i, j: Integer;
  item: TdxBarSubItem;
  group: TdxNavBarGroup;
  bar: TdxNavBarItem;
begin
  dxNavBar1.Groups.Clear;
  for i := 0 to dxBarManager1Bar1.ItemLinks.Count - 1 do
  begin
    item := TdxBarSubItem(dxBarManager1Bar1.ItemLinks[i].Control.Item);
    group := dxNavBar1.Groups.Add;
    group.Caption := item.Caption;
    for j := 0 to item.ItemLinks.Count - 1 do
    begin
      bar := dxNavBar1.Items.Add;
      bar.Caption := item.ItemLinks.Items[j].Caption;
     // bar.OnClick := dxNavBarItemClick;  ??dxNavBarItemClick这个过程该怎么写
      bar.SmallImageIndex := 10;
      group.CreateLink(bar);
    end;
  end;
end;

解决方案 »

  1.   

    private
    procedure ItemClick(Sender: TObject);implementationprocedure TXX.ItemClick(Sender: TObject);
    begin
    ...
    end;bar.OnClick :=ItemClick;
      

  2.   

    procedure TFrmMain.dxNavBarItemClick(Sender: TObject);
    var i, j:Integer;
    item: TdxBarSubItem;
    begin
      for i := 0 to dxBarManager1Bar1.ItemLinks.Count - 1 do
        begin
          item := TdxBarSubItem(dxBarManager1Bar1.ItemLinks[i].Control.Item);
          for j := 0 to item.ItemLinks.Count - 1 do
          begin
            if item.ItemLinks.Items[j].Caption=(Sender as TdxNavBarItem).Caption then
            begin
              TdxBarLargeButton(item.ItemLinks.Items[j]).Click;
              Break;
            end;
          end;
        end;
    end;
    这样有问题么?提示abstract error