首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TAction.SecondaryShortCuts是特定于语言的。如何正确设置?

TAction.SecondaryShortCuts是特定于语言的。如何正确设置?
EN

Stack Overflow用户
提问于 2012-10-30 20:03:24
回答 1查看 672关注 0票数 4

我刚刚使用了Delphi的TAction的SecondaryShortCuts特性。但是快捷键是由字符串定义的,比如"F5“或"Shift+F5”。现在的问题是:在我的德语Windows上,该操作无法触发,因为键"Shift“在德语中称为"Umsch”!这是否意味着SecondaryShortCuts-属性在设计时完全无用,因为没有人可以创建在国际上使用它的应用程序?

我可以在运行时通过将VK_SHIFT转换为正确的名称来设置密钥。我通过GetKeyNameText尝试了一下,但这不起作用,因为它给出了长形式的"Umschalt“而不是"Umsch”。有人知道获取密钥名称缩写的函数吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-30 20:09:31

您可以尝试这样做:从快捷方式生成快捷方式文本:

代码语言:javascript
复制
var
  s: TShortCut;
begin
  s := ShortCut(Ord('A'), [ssShift]);
  Action1.SecondaryShortCuts.Add(ShortCutToText(s));

顺便说一句,这些值由以下常量决定。你翻译过那些吗?如果是这样,你需要这样做吗?:

代码语言:javascript
复制
SmkcShift = 'Shift+';
SmkcCtrl = 'Ctrl+';
SmkcAlt = 'Alt+';
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13138573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档