如何合并使用单独图像列表的TMainMenu并保留每个菜单项的正确图像?

StackOverflow https://stackoverflow.com/questions/152405

  •  02-07-2019
  •  | 
  •  

我有一个包含两个TForm类的程序,并且每个程序都添加了一个TMainMenu。然后我尝试在运行时动态合并它们。

我的问题是,当他们合并TMainMenu中合并的菜单项时,现在以合并的形式显示存储在图像列表中的图像,而不是存储在其原始形式的图像列表中的图像。

我做错了吗?是否有一个解决方法,以便菜单项继续使用它们源自的形式的图像列表?

我在许多项目中使用合并形式,否则单个共享图像列表会有意义。

如果我需要澄清任何事情,请说。

由于

彼得

有帮助吗?

解决方案

我处理这个的方法是在数据模块上有一个图像列表,然后在每个表单中包含它,以便它们可以共享那一组图标。

其他提示

前一段时间我遇到了完全相同的问题,但我也遇到了其他菜单合并问题因为我的应用程序是MDI,所以我决定以完全不同的方式做事。

但是,您可以尝试将一个表单的图像动态添加到另一个表单的ImageList,并“重定向” ImageIndex es。可能有点棘手,但应该有用。

我最终得到的是使用 Toolbar2000 软件包,用于我的所有菜单和工具栏。然后,您可以下载一段非常好的代码,名为 TB2Merge ,完全符合你的要求。它还利用Toolbar2000的一些基础设施将菜单项的图像链接到VCL的TMainMenu中不存在的不同 TImageList ---基础设施。务必仔细阅读TB2Merge的文档!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top