我需要将一些密钥发送到另一个程序,我在AppleScript中尝试了keystroke
。一切顺利,直到我发现当我将数字发送到在Parallels虚拟机中运行的Windows程序时,它不起作用,而是改变了光标的位置。
然后我使用程序keyboardSee来查找错误,我发现所有数字和一些符号都映射到数字键盘上的键,而不是数字线。因此,NumLock可能在虚拟机中关闭,而映射到键盘的键不是数字而是控制键。
我发现有些人说使用key code
可以解决这个问题,但是我找不到一个完美的char-to-keycode表,而且我也注意到人们说关键代码对于同一个字符可能是不同的不同的键盘布局。
那么如何才能完美地解决这个问题呢,这意味着我怎样才能使它始终将数字映射到数字线,并且无论键盘布局如何都执行相同的操作?
答案 0 :(得分:1)
我不敢说我不认为这是可能的。一般来说,Mac应用程序知道mac在其数字键盘上甚至没有与PC相同的字符(没有箭头,没有数字锁定等),因此这种区别毫无意义。一些移植不良的Mac应用程序确实有所区别,例如“魔兽世界”(虽然它不是那里最糟糕的端口)。我相信parallels的菜单中有一个num lock(如果我没记错的话),所以你应该能够以这种方式绕过它。