BusinessSkinForm的bsSkinMainMenu如何动态增加主菜单项?(100分)

  • 主题发起人 主题发起人 shuaikiller
  • 开始时间 开始时间
S

shuaikiller

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用的是BusinessSkinForm第三方控件,
我想实现动态增加菜单,包括主菜单和子菜单,经过多次实现发现
如果已经静态添加好主菜单(也就是第一集菜单)后,再动态用代码增加子菜单是没有问题的,
但是如果代码动态增加主菜单,怎么增加都不显示出来,我的代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
mi:TMenuItem;
begin
mi:= TMenuItem.Create(self);
mi.Name:='test';
mi.Caption:='测试主菜单';
mi.Visible:=true;

bsSkinMainMenu1.Items.Add(mi);//这样动态增加主菜单后显示不了;
//如果已经静态增加过主菜单,那么加入子菜单的代码可以类似如下写,并可以正常显示
//bsSkinMainMenu1.Items.items[0].Add(mi);
end;

控件的设置关系我都已经设置好,否则也就不会显示子菜单了,我的理解
所以希望有使用过此控件的高手指点:bsSkinMainMenu如何动态增加主菜单项?
 
var
newitem, subitem : Tmenuitem;
begin
newitem:=tmenuitem.create([red]bsSkinMainMenu1[/red]);
newitem.caption:='测试主菜单';
subitem:=tmenuitem.create(bsSkinMainMenu1);
subitem.caption:='子菜单';
newitem.Add(subitem);
bsSkinMainMenu1.items.insert(bsSkinMainMenu1.items.count,newitem);
end;
 
........楼主代码别变,加一句话就行了:
bsSkinMainMenuBar1.UpDateItems;
 
谢谢两位!
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部