12

我目前参与了一个高度本地化的 WPF 应用程序,我们遇到了一个关于非英语语言菜单上的键盘快捷键的错误。该错误涉及未翻译的修饰键名称(Shift,Ctrl等),这很容易修复。

然而,这让我想到了快捷键本身,它们通常基于命令的第一个字母,除非由于冲突或约定不可行。当命令名称本地化时,命令和它们各自的快捷方式之间的链接通常会丢失:

  • 这值得担心吗?
  • 现有的主要应用程序如何应对这个问题?
  • 在这种情况下还有其他问题需要考虑吗?

尽管这个问题的灵感来自 WPF 应用程序,但我对一般情况更感兴趣。

4

3 回答 3

3

您应该远离符号键(例如*<),因为它们往往会在国际键盘上移动。参见维基百科:键盘布局

如果您计划根据本地化切换字母,您应该让用户选择他/她是否想要英文变体。如果我必须根据语言学习两组快捷方式,这会令人沮丧。(跨平台应用程序也是如此。)

最好是完全可定制的键盘快捷键,但对于高级用户来说可能更多。有关示例,请参阅Media Player Classic 。

于 2009-01-27T17:28:13.843 回答
1

在搜索更多信息时,我发现了一篇关于这个确切主题的优秀博客文章。

总结一下:

  • 如果可能,不更改快捷方式
  • 如果某个键在特定布局上不可用,我们应该尝试使用相同的物理位置
  • 应用程序语言和键盘布局之间不应该有联系
  • 认为应用程序语言将匹配键盘布局是错误的。我给你举个例子:在罗马尼亚,超过 95% 的计算机使用美式键盘布局,另外 5% 使用 4-5 种不同的罗马尼亚键盘布局中的一种。
  • 有些人使用多种键盘布局 - 通常他们是高级用户,我们不能忽视他们键盘布局可以随时切换
  • 只有拉丁字符才能安全使用
于 2009-01-29T00:22:03.960 回答
1

微软对此有指导方针,值得一试:http: //msdn.microsoft.com/en-us/library/windows/desktop/bb545460.aspx#choosing

并且来自顶级准则违规

  • 不要将访问键与快捷键混淆。虽然访问键和快捷键都提供了对 UI 的键盘访问,但它们有不同的用途和指导方针。
  • 为最常用的命令分配快捷键。不常用的程序和功能不需要快捷键,因为用户可以使用访问键代替。
  • 不要为众所周知的快捷键分配不同的含义。因为它们是被记住的,众所周知的快捷方式的不一致的含义是令人沮丧和容易出错的。有关 Windows 程序使用的众所周知的快捷键,请参阅 Windows 键盘快捷键。
  • 不要尝试分配系统范围的程序快捷键。只有当你的程序有输入焦点时,你的程序的快捷键才会生效。
于 2013-11-13T07:37:37.620 回答