スクリプトにユーザーインターフェースを持たせるために、ExtendScriptにはScriptUIというGUI APIが用意されています。

アプリケーションの中にはInDesignのように独自のGUIパーツを持っているものもありますが、ScriptUIはExtendScriptに対応するアプリケーションであれば共通して使えるGUI APIです。

 

なお、簡単なアラートや入力ダイアログを表示するには、ScriptUIとは別に以下のようなものが用意されています。

alert ユーザーに何らかの警告を出す
confirm ユーザーに「OK」か「Cancel」の選択を求める
prompt ユーザーにテキスト入力を促す

 

また、ファイルやフォルダの操作を行うためには、OSが用意している専用ダイアログも呼び出すことができます。

参照:フォルダ操作の基本ファイル選択ダイアログでFileオブジェクトを取得するフォルダ選択ダイアログでFolderオブジェクトを取得する

 

ScriptUIによるGUI作成の流れは、次の3段階に大別されます。

 

  1. 基本となるウィンドウを作成する
  2. 作成したウィンドウ上にボタンなどのコントロール類を配置する
  3. ウィンドウや配置したパーツで何らかのアクションが起こったときの動作を設定する

 

これらが一連の流れになりますが、ウィンドウの作成、各種コントロールの配置および動作の設定まで、すべてスクリプトで書き起こさなければならないので、かなり手間のかかる作業です。むしろ、GUI作成のほうが本編のコードより時間がかかることも少なくありません。

しかし、丁寧に作りこまれたGUIは、スクリプトの使い勝手を格段に向上させます。逆に使い勝手の悪いスクリプトは潜在的な能力を十分に発揮できませんので、GUIに時間をかけることは決して無駄なことではありません。

 

<備考> 

ScriptUIの詳細はInDesign等に付属している「JAVASCRIPT TOOLS GUIDE」に書かれています。

また、Peter Kahrel氏の「Beginning ScriptUI」というドキュメントは、表示面に関してかなり細かく説明されています。

 

 

Joomla templates by a4joomla