MainMenu 下有 '我的账号'菜单. 现在想在窗口加载时,根据'账号表'中的记录,动态的添加子菜单.
如:表中有"账号一,账号二"两条记录,我就想在"我的账号"下添加"账号一" 和 "账号二" 两个子菜单,请问如何实现 ?

解决方案 »

  1.   

    var
      aItem: TMenuItem;
      i: Integer;//"我的帐号"在菜单对应的索引
    begin
      aItem := TMenuItem.Create(nil);
      aItem.Caption := '帐号一';
      mainMenu.Items.Items[i].Add(aItem);
      aItem := TMenuItem.Create(nil);
      aItem.Caption := '帐号二';
      mainMenu.Items.Items[i].Add(aItem);
    end;
      

  2.   

    问题解决了. 
    那如何根据表中的记录添加呢 ?
    '账号一' 和 '账号二' 只是 '账号' 表中 字段'Account' 的值 .
      

  3.   

    var
      aItem: TMenuItem;
      i: Integer;//"我的帐号"在菜单对应的索引
    begin
      for i:=1 to data.recordcount do
      begin
        aItem := TMenuItem.Create(nil);
        aItem.Caption := data.fieldbyname('caption').asstring;
        mainMenu.Items.Items[i].Add(aItem);
        data.next;
      end;
    end;
      
      

  4.   

    可是Adoquery 下面没有 fieldbyname 这个属性啊