Код AppleScript, который нажимает кнопку в NSAlert - PullRequest
4 голосов
/ 29 мая 2011

У меня есть приложение Mac, которое после открытия (в awakeFromNib) показывает пользователю NSAlert с двумя кнопками, одна с «Option1», другая с «Option2». Я хотел бы автоматизировать следующий поток:

  1. Откройте приложение из папки «Программы».
  2. Выберите «Option2», нажав кнопку в NSAlert

Пока мне удалось сделать только первую часть:

tell application "Finder"
activate
make new Finder window to startup disk
open application file "My Application.app" of folder "Applications" of startup disk
close Finder window 1
end tell

Кто-нибудь может мне помочь с кодом? Я понимаю, что могу использовать команды системных событий, чтобы перехватить это событие, но не могу найти какую-либо справку в Интернете для нажатия кнопки в NSAlert, а не в обычном окне.

Ответы [ 2 ]

0 голосов
/ 30 мая 2011

Сколько окон у вас открыто? Это, вероятно, запутывается.

Если вам нужно, чтобы в программе UI Browser вообще можно было найти подходящие термины для GUI Scripting. Я не уверен, что стоит покупать именно для этого, но вы можете запустить программу в демонстрационном режиме на месяц и использовать ее, чтобы найти правильные условия.

http://pfiddlesoft.com/uibrowser/

0 голосов
/ 29 мая 2011

Вы можете попробовать это ...

tell application "My Application" to activate

delay 5

tell application "System Events"
    tell process "My Application"
       click button "option 2" of window 1
    end
end
...