Используйте AppleScript, чтобы выбрать ластик в Powerpoint - PullRequest
0 голосов
/ 21 февраля 2020

Во-первых, здесь - это видео-объяснение моей проблемы.

Я учитель, который ищет способ легкого доступа к инструменту «Ластик» во время проведения презентаций с помощью PowerPoint. Частично следуя этому руководству , я пытался использовать Automator для записи своих действий при выборе ластика, сохраняя его в качестве быстрого действия, а затем назначая комбинацию клавиш для действия.

К сожалению, я получаю сообщение об ошибке:

В действии "Watch Me Do" возникла ошибка: "Приложение Powerpoint не запущено, когда ожидается"

Или, если я сначала скопирую код из действия Automator, вставлю его в файл «Запустить AppleScript», а затем назначу ярлык для запуска файла, я получу следующее:

Действие « Запустить AppleScript »обнаружена ошибка:« Операция не может быть завершена. (com.apple.Автоматическая ошибка -212.) ”

Может кто-нибудь помочь, пожалуйста? Спасибо!

В качестве альтернативы, если кто-нибудь знает лучший способ достичь моей цели, пожалуйста, поделитесь.

1 Ответ

0 голосов
/ 21 февраля 2020

Иногда вам нужно go проходить через каждый процесс по одному шагу за раз, чтобы изолировать причины ошибок. Сначала давайте посмотрим, выберет ли этот код инструмент ластика.
Вставьте следующий код AppleScript в новый документ Script Editor.app. Вы можете запустить код прямо из этого документа. Если код работает для вас, попробуйте вставить его в рабочий процесс Automator.

tell application "Microsoft PowerPoint"
    activate
    repeat until frontmost
        delay 0.1
    end repeat
end tell

tell application "System Events"
    repeat while not (exists of radio button 3 of tab group 1 of window 1 of application process "PowerPoint")
        delay 0.1
    end repeat
    if not (exists of menu button "Eraser" of group 1 of scroll area 1 of tab group 1 of window 1 of application process "PowerPoint") then
        click radio button 3 of tab group 1 of window 1 of application process "PowerPoint"
        delay 0.1
        if value of menu button 1 of group 1 of scroll area 1 of tab group 1 of window 1 of application process "PowerPoint" is 0 then
            click menu button "Eraser" of group 1 of scroll area 1 of tab group 1 of window 1 of application process "PowerPoint"
        end if
    else
        delay 0.1
        if value of menu button 1 of group 1 of scroll area 1 of tab group 1 of window 1 of application process "PowerPoint" is 0 then
            click menu button "Eraser" of group 1 of scroll area 1 of tab group 1 of window 1 of application process "PowerPoint"
        end if
    end if
end tell

enter image description here

Убедитесь, что вы добавили Automator.app, редактор сценариев. app, System Events.app и PowerPoint.app… а также ваш скрипт (если он был сохранен как .app) в списке Системные настройки> Безопасность> Конфиденциальность> Специальные возможности. Затем снова добавьте те же элементы в Системные настройки> Безопасность> Конфиденциальность> Список приложений с полным доступом к диску.

enter image description here

Кроме того, если вы сохраняете свой сценарий или рабочий процесс Automator как приложение, каждый раз, когда вы вносите изменения и сохраняете этот файл снова, вам потребуется go вернитесь и снова добавьте его в эти списки приложений в настройках безопасности.

...