如何动态添加popupmenu里面的item-CSDN论坛

如何动态添加popupmenu里面的item-CSDN论坛,第1张

按照Memo1中的列表生成PopupMenu,这里设置了Item的hint,把内容通过hint传递。

procedure TForm1.Button1Click(Sender: TObject)

var

i:integer

Item:TMenuItem

begin

for i:=0 to Memo1.Lines.Count-1 do

begin

Item:=TMenuItem.Create(Owner)

Item.Caption:=Memo1.Lines.Strings[i]

Item.Hint:=Memo1.Lines.Strings[i]

Item.OnClick:=MenuItemClick

PopupMenu1.Items.Add(Item)

end

end

procedure TForm1.MenuItemClick(Sender:TObject)

begin

ShowMessage(TMenuItem(Sender).Hint)

end

从menu按键开始,涉及以下3个方法:

1、onCreateOptionsMenu(Menu menu)

2、onPrepareOptionsMenu(Menu menu)

3、onOptionsItemSelected(MenuItem item)

法名

触发时间

onCreateOptionsMenu

进入Launcher后第一次点MENU按钮触发

onPrepareOptionsMenu

有两种情况:1、进入Launcher后第一次点MENU按钮触发onCreateOptionsMenu后调用;2、经过第一步,以后每次点MENU按钮时都会触发

onOptionsItemSelected

选择MENU里面的任意内容后触发


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11865722.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存