我正在寻找一个脚本,将光标放在消息应用程序的文本字段中。我找了一个键盘快捷键来做到这一点,但找不到一个。任何人都可以提供我可以修改的脚本或类似脚本。
注意我不是程序员或非常熟悉AppleScript,但能够修改符合我需求的脚本。
我需要这个,因为我正在尝试使用Mac OS中内置的听写功能来控制消息应用程序。我需要一个可以分配给语音命令的脚本,将光标放在文本字段中,这样我就可以指示一条消息。
非常感谢。
答案 0 :(得分:0)
以下测试并在OS X 10.8.5和Messages 7.0.1下工作,可能需要针对其他版本的OS X / macOS / Messages进行调整:
tell application "Messages"
activate
tell application "System Events"
set focused of text area 1 of scroll area 4 of splitter group 1 of window 1 of application process "Messages" to true
end tell
end tell
注意:这是在假设消息已打开且打开窗口的情况下编码的。根据需要,以try
和/或delay
和/或on error
语句的形式,必须进行额外编码,否则将适当。
以下是我如何编写代码的示例,该代码处理消息是否已打开,是否显示其窗口等。
on setFocusToTextArea()
tell application "System Events"
if (count of windows of application process "Messages") is equal to 0 then
click UI element "Messages" of list 1 of application process "Dock"
delay 0.25
end if
try
set focused of text area 1 of scroll area 4 of splitter group 1 of window 1 of application process "Messages" to true
end try
end tell
end setFocusToTextArea
tell application "Messages"
if running then
my setFocusToTextArea()
else
activate
delay 2
my setFocusToTextArea()
end if
activate
end tell
注意:如果在运行此脚本时关闭消息,则delay 2
命令会在其他代码<之前为消息打开时间/ em>运行。可以根据系统的速度调整delay
命令的值。
答案 1 :(得分:0)