能否在启动时动态加载的菜单!并如何处理菜单事件??急!急!急! (200分)

  • 主题发起人 主题发起人 quzl
  • 开始时间 开始时间
Q

quzl

Unregistered / Unconfirmed
GUEST, unregistred user!
最近在做一个工程,但菜单要求能在启动的时候加载,即把菜单按一定格式存储在INI文件或其他
文件中,在程序启动时,再动态加载菜单。也许就问题不是太难,但有一个问题特别难以解决,
就是在动态加载菜单后,所有菜单的事件如何处理,有些菜单的CLICK事件可能不是一个语句那么
简单,很难动态加载,不知哪位可给我满意的解答!在此表示十分的感谢!
 
你可以把窗体封装到一个DLL中,然后在INI中制定该DLL相关信息即可!
WINDOWS自己也是这么做的,你可以参看win.ini等文件!
 
楼上的大虾,能说清楚些吗?我们这种菜鸟可能太笨了,是吧!
 
1、把OnClick事件写好,如:
procedure MyOnClick(Sender:TObject);
begin
...
end;
在菜单创建后为对应的OnClick付值:
M1.OnClick:=MyOnClick;
2、用ActionList,这方法比较好!
先在ActionList中把所有菜单都做成一个Action,处理好OnExecute事件
创建完菜单后为菜单的Action属性付值
 
当然可以啊,非常简单
,你对菜单appendmenu,机主id
然后自己处理消息,如果还不会我可以给你一段代码
 
xueminliu, 可以给我邮一份代码吗?
flxa@263.net 非常感谢!
 
杜宝兄弟的方法是可行的!
 
杜宝的方法可行,不过如果动态加入菜单多了,就有点不方便了
我和yb_unique的方法差不多,只不过我是把信息存到注册表里面了,处理的东西放到了dll
中去了。
 
多人接受答案了。
 
后退
顶部