Delphi:如何本地化菜单快捷方式的描述?

Uli*_*rdt 6 delphi localization keyboard-shortcuts shortcut internationalization

有没有办法让像一个快捷的本地化描述Ctrl+ Z,使我得到" Ctrl+ Z",如果应用程序在英文系统和"上运行Strg+ Z"在德语系统上?

VCL函数ShortCutToText未国际化.API函数GetKeyNameText有点好但仍然不完美:如果将德语XP的区域设置切换为英语(美国),它仍会生成德语文本.除了结果是资本,这是丑陋的.

澄清:我知道如何用自定义版本替换ShortCutToText或Smkc*资源字符串.但要使用它我需要翻译的字符串.我想从OS(或类似的)获得这些.

更新:看起来微软希望开发人员自己进行翻译 - 请参阅2. 将菜单项与加速键关联.引用:

例如,要将CTRL + O分配给"文件"菜单上的"打开"命令,可以修改菜单项的标题,使其如下所示:

打开\ TCTRL + O

菜单编辑器中的菜单项会在您键入时更新以反映新标题.

请注意,快捷方式将手动附加到标题.

Uli*_*rdt 1

我将回答我自己的问题,以便我有一些可以接受的东西:看起来微软希望开发人员自己进行翻译 - 请参阅将菜单项与加速键关联中的 2. 。引用:

\n\n
\n

例如,要将 CTRL+O 分配给“文件”菜单上的“打开”命令,\n 您可以修改菜单项\xe2\x80\x99s 标题,使其如下所示:

\n\n

打开\\tCtrl+O

\n\n

菜单编辑器中的菜单项会更新,以反映您键入的新标题\n。

\n
\n\n

请注意,快捷方式是手动附加到标题的。

\n