我需要将一些密钥发送到另一个程序,我在AppleScript中尝试了keystroke。一切都运行得很好,直到我发现当我向运行在Parallels虚拟机中的Windows程序发送数字时,它无法工作,而是改变了光标的位置。
然后,我使用程序keyboardSee查找问题所在,我发现所有数字和一些符号都映射到数字键盘上的键,而不是数字行。因此,也许虚拟机中的NumLock关闭了,并且映射到键盘的键触发的不是数字键,而是控制键。
我发现有些人说使用key code可以解决这个问题,但我找不到一个完美的字符到键码的表,我还注意到人们说在不同的键盘布局中,同一个字符的键码可能不同。
那么,我如何才能完美地解决这个问题,也就是说,我怎样才能使它始终将数字映射到数字行,并且在任何键盘布局中都能执行相同的操作呢?
发布于 2012-01-29 21:00:53
我不敢说,我认为这在目前是不可能的。一般而言,Mac应用程序知道Mac的Numberpad上甚至没有PC上相同的字符(没有箭头,没有数字锁等),所以区别是没有意义的。然而,一些移植不佳的Mac应用程序确实有所不同,比如魔兽世界(尽管它无论如何都不是最糟糕的移植版本)。我相信parallels的菜单中有一个num锁(如果我没记错的话),所以你应该可以通过这种方式绕过它。
https://stackoverflow.com/questions/8622671
复制相似问题