如何更改位于Delphi XE2功能区组件中的快速访问工具栏的语言?

时间:2014-05-15 21:47:57

标签: delphi delphi-xe2

快速访问工具栏有一个带有三个选项的弹出菜单

  • 更多命令
  • 在功能区上方显示
  • 最小化功能区

我需要这些选项以西班牙语出现

1 个答案:

答案 0 :(得分:2)

用于这些菜单项的常量(以及所有其他基于带状的字符串常量)位于RibbonConsts.pas中。他们位于文件的顶部,在以评论为主题的部分中

  // Quick Access Toolbar

要更改它们,请将文件复制到项目目录,然后对该本地副本进行更改。然后从主菜单中构建(不是编译,但项目 - >构建)。更改的常量不会在设计时出现,但它们将在运行时在您的应用程序中使用。 (请参阅下面的注释,了解不需要修改源代码的替代方法,而是在运行时执行此操作。)

请注意,如果您使用运行时包,则上述更改将不起作用,因为它们不会更改VCLRibbon包中包含的常量。您可以通过从运行时包列表中删除功能区包来解决此问题,以便将功能区代码链接到您的可执行文件中。

替代方法(在下面的评论中由Uli Gerhardt提供):您可以使用VirtualProtect在运行时通过代码修改资源字符串。这样做的一个例子可以在Ok to Use VirtualProtect to change resource in Delphi?中找到。您只需将该示例中的资源名称更改为您要更改的RibbonConsts中使用的名称(当然,将RibbonConsts添加到您的implementation uses子句中,以便名称可用)。 / p>

(我通过在Source \ _VCL文件夹中打开命令提示符并执行find /I "More Commands" *ribbon*.pas来找到这些常量。它相当快,而且它是非常有用的技术,就像使用一样从IDE的主菜单中搜索 - >在文件中查找菜单选项。)