Photoshop JavaScript (ExtendScript): как отобразить слой до завершения сценария? - PullRequest
0 голосов
/ 10 июня 2018

У меня есть скрипт, выполнение которого занимает около 5-10 секунд.Я хотел бы иметь возможность дать пользователю очень четкое представление о том, когда он завершит выполнение.

Моя идея для достижения этой цели состояла в том, чтобы создать слой с большим "...working ... " знак, нарисованный на нем.Сценарий сделает этот слой видимым в начале сценария, используя что-то вроде:

app.activeDocument.artLayers.getByName('...working...').visible = 1

, затем выполнит оставшуюся часть сценария и, наконец, снова скроет слой в самом конце.

К сожалению, это не работает, потому что Photoshop не обновляет статус слоя, пока сценарий не завершится.Слой, по идее, «показан», но в одно мгновение он снова скрыт, поэтому пользователь никогда его не увидит.

Есть ли способ отобразить слой до завершения выполнения скрипта?

Или еще, можете ли вы придумать какой-либо другой способ, которым я могу визуально уведомить пользователя, как только сценарий будет завершен, без трения, который не требует дополнительных усилий со стороны пользователя (т.е. невсплывающее диалоговое окно, требующее нажатия кнопки ОК)

Заранее спасибо.

1 Ответ

0 голосов
/ 10 июня 2018

Вы должны использовать пользовательский интерфейс 'progressbar', который намного лучше, чем показывать слой

. Вы можете скачать и прочитать документацию PDF-файл об интерфейсе Adobe Script, написанный Питером Карелем на этой веб-странице ниже

http://www.kahrel.plus.com/indesign/scriptui.html

...