主窗体上放了两个菜单项,MainMenu1是常用的,MainMenu2是动态建立的,能不能直接把MainMenu1上的所有项添加到MainMenu2上? 我不想再动态遍历?如题????? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不遍历也可以. 可以通过MainMenu1 ,创建MainMenu2 也就是引用MainMenu1. MainMenu2:=Main1.create (代码不能运行,只是思路)剩下的方法只能遍历了 我觉得不可以。Delphi没有C++语言那样的拷贝构造函数。TPersistent类有一个Assign虚方法,TBitmap、TStringList等类型重写了这个方法,也是在方法内部把关键属性逐一赋值 续上:TMenuItem类没有重写Assign方法,因此不能用。把2楼的意思重复表达一下:即使TBitmap、TStringList等类型,可以BMP1.Assign(BMP2)这样使用,其实其内部实现原理也是你说的遍历 遍历在所难免,但是TMenuItem.Add方法也是可以接受MenuItem数组的,可以在动态生成MenuItem的同时,存一份在数组中,这样就可以一次性Add了 procedure Add(Item: TMenuItem); overload;procedure Add(const AItems: array of TMenuItem); overload; procedure Add(Item: TMenuItem); overload; procedure Add(const AItems: array of TMenuItem); overload; 这个试卷数据库结构如何设计 如何HOOK子控件的WM_COMMAND消息? 关于Listview,可能有点难度(在线) 用delphi编程备份SQLServer数据库,程序成功运行,但找不到备份生成的文件? 紧急求助高手!!!高分相送。。。我等不急了。。。 如何获得ACCESS中的所有表名? win2000怎样实现开机自动进入桌面然后锁定? 如何判断一个窗体是否在屏幕最前 如何将dbgrid中多选的记录提取出来,显示在另一个dbgrid中 关于的delphi数据库的问题 Delphi7中的CopyToClipboard无效? DBGride 的一个小问题
可以通过MainMenu1 ,创建MainMenu2
也就是引用MainMenu1.
MainMenu2:=Main1.create (代码不能运行,只是思路)剩下的方法只能遍历了
TPersistent类有一个Assign虚方法,TBitmap、TStringList等类型重写了这个方法,也是在方法内部把关键属性逐一赋值
procedure Add(Item: TMenuItem); overload;
procedure Add(const AItems: array of TMenuItem); overload;
procedure Add(const AItems: array of TMenuItem); overload;