OSX:获取最重要窗口细节的脚本不断提供最小化窗口的详细信息

时间:2016-09-12 09:37:19

标签: macos applescript

我试图通过下面给出的Applecript获取最前面窗口的活动窗口详细信息(应用程序名称,进程ID和窗口标题):

global windowTitle,browserTabUrl,appName,appID

set windowTitle to ""
set currentTabTitle to ""

tell application "System Events"

  set frontApp to first application process whose frontmost is true
  set appName to name of frontApp
  set x to first process whose its frontmost is true
  set appID to unix id of x

  tell process appName
    try
       tell (1st window whose value of attribute "AXMain" is true)
           set windowTitle to value of attribute "AXTitle"
       end tell
    end try    
  end tell

end tell

return {windowTitle,appName,appID}

该脚本效果很好(返回正确的应用程序名称和窗口标题)除了一个问题,其中当我最小化当前关注的活动窗口时,它还不断给出最小化窗口的详细信息。 < / p>

例如:假设我打开 Chrome浏览器,然后脚本会输出

Active Window Details :  Google Chrome, 829

但是当我最小化Chrome浏览器和其他一些窗口(比如Skype)会在后台显示时

然后脚本也给我输出

 Active Window Details :  Google Chrome, 829



查询:即使在活动窗口最小化之后,我们还能以什么方式获得正确的最前面的窗口吗?

其他详细信息:

  • 我正在尝试从nodejs运行此脚本。代码显示为here
  • 我以500毫秒的间隔重复运行此脚本。
  • 我真的不具备使用AppleScript的经验

非常感谢这方面的任何帮助。另外,如果您需要有关此相关信息,请与我们联系。

0 个答案:

没有答案