我需要使用AppleScript向应用程序发送数字键的键向下键/向上键事件。但是,命令:
key down "6"
delay 1
key up "6"
发送击键,好像它们来自数字键盘一样。我需要将它们解释为来自键盘顶部的数字行。
我也尝试使用(ASCII character 54)
而不是文字,但没有成功。
注意我需要按键发送 - 发送keystroke
或key code
不会。
答案 0 :(得分:3)
尝试发送key down
虚拟密钥代码而不是按键字,即
key down (key code <int>)
其中int
是
1 → 18
2 → 19
3 → 20
4 → 21
5 → 23
6 → 22
7 → 26
8 → 28
9 → 25
0 → 29
您将找到在
中声明的所有虚拟键码/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Headers/Events.h
但如果您不想进行十六进制到整数转换,查找它们的最简单方法可能是使用许多技巧Key Codes,as suggested dj bazzie wazzie。< / p>
答案 1 :(得分:1)
使用系统事件时,按键和向上键不起作用,需要键码或按键。击键将执行它的值,而键码需要键号。从应用程序商店下载应用程序“密钥代码”以确定正确的密钥代码(它是免费的)。
--activate the application (and it's first responder) first
tell application "System Events"
keystroke "1" --value "1"
key code 18 --1 from upper num keys
key code 83 --1 from num pad
end tell