将变量传递给“告诉应用程序”?

时间:2013-06-24 21:14:50

标签: macos applescript

如何将变量传递给Applescript中的tell application currentWindow

我有这段代码:

tell application "System Events"
    set currentWindow to get name of processes whose frontmost is true
end tell

-- get bundle identifier of (info for (path to application currentWindow)) -- KO
-- tell application id currentWindow -- KO
-- tell application "Finder" -- ok
tell application currentWindow -- KO!
    activate
end tell

我想打开currentWindow,当然,不知道名字。

感谢。

2 个答案:

答案 0 :(得分:2)

尝试:

tell application "System Events" to set frontBundleId to bundle identifier of first application process whose frontmost is true
tell application id frontBundleId to activate

答案 1 :(得分:1)

adayzdone有更好的方法,但是代码的主要问题是currentWindow是一个名称列表{“前端应用程序名称”}。您要求“过程名称”,复数,并将结果返回到列表中。因此,由于它是一个列表,您必须访问列表中的项目。因此,这可能会奏效。您会注意到adayzdone要求“第一个申请流程”,因此他只得到1个结果,然后它不是一个列表。

tell application "System Events"
    set currentWindow to get name of processes whose frontmost is true
end tell

tell application (item 1 of currentWindow)
    activate
end tell