Applescript Mojave Нажмите кнопку захвата изображения - PullRequest
0 голосов
/ 06 июля 2019

Как Applescript нажимает кнопку «Удалить» в Mojave Image Capture?

В ML это работает -

activate application "Image Capture"
tell application "System Events"
    click button 3 of group 1 of splitter group 1 of window "Image Capture" of application process "Image Capture" of application "System Events"
end tell

- и у меня еще нет эквивалента для Mojave,Спасибо.

1 Ответ

0 голосов
/ 06 июля 2019

Они немного переместили вещи.Попробуйте это:

tell application "System Events"
    tell process "Image Capture"
        set frontmost to true
        click window "Image Capture"'s splitter group 1's group 2's button "Delete"
        key code 48 -- tab to move focus to 'delete'
        -- key code 36 -- return key
    end tell
end tell

Я добавил код, который очищает "Вы уверены?"диалоговое окно и автоматически удаляет изображение, но я закомментировал строку «код ключа 36», которая имитирует ключ возврата, потому что я не хотел, чтобы вы случайно удалили что-то важное.

Отладка сценариев графического интерфейса пользователя

, если вышеприведенный код выдает ошибку, и у вас нет UIElementExplorer или UIBrowser (приложения, которые детализируются через графический интерфейс), вы можетеотладьте это, выполнив следующий код в редакторе сценариев:

tell application "System Events"
    tell process "Image Capture"
        tell window "Image Capture"
            tell splitter group 1
                entire contents
            end tell
        end tell
    end tell
end tell

Это медленно и создает огромную массу текста в журнале сценариев, который показывает каждый элемент графического интерфейса от splitter group 1 и ниже.Ищите «Удалить» в журнале, как я делал на изображении ниже: нажмите кнопку «Журнал» (обведено зеленым), введите команду «F» и введите термин «удалить» (обведено красным), и он покажет вам записьдля кнопки удаления.Затем просто скопируйте этот путь в код.enter image description here Возможно, вам придется изменить фокус (т. Е. Поставить строку entire contents после строки window "Image Capture", чтобы расширить область видимости).

Обратите внимание, что графический интерфейс пользователя может измениться, когда выдобавить разные устройства и просматривать в разных режимах, и при изменении графического интерфейса все индексы (группа сплиттера 1, группа 2, кнопка 7) также могут измениться.Вам может потребоваться проверить это с несколькими различными конфигурациями, если вы используете несколько устройств, чтобы увидеть, что происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...