[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(DTPtechNote:1497) [JS_InDesign CS2]簡単なリストダイアログ



あー、JSにはリストを選ぶためのインターフェイスが(たぶん)ないので、書いてみた。なんてほどのことでもないのだが...^^


////////////////////////////////////////////リストダイアログ
/*
myTitle	ダイアログ(バー)のタイトル
myPrompt	メッセージ
myList	ポップアップに展開するリスト

result	選択したリスト番号
*/
function listDialog(myTitle, myPrompt, myList){
	var myTitle, myPrompt, myList;
	var myDialog = app.dialogs.add({name:myTitle,canCancel:true});
	with(myDialog){
		with(dialogColumns.add()){
			// プロンプト
			staticTexts.add({staticLabel:myPrompt});
		}
		with(dialogColumns.add()){
			// ポップアップメニュー
			var mySelecteditem = dropdowns.add({stringList:myList, selectedIndex:0});
		}
	}
	// ダイアログボックスを表示
	if(myDialog.show() == true){
		var ans = mySelecteditem.selectedIndex;
		//正常にダイアログを片付ける
		myDialog.destroy();
		//選択したアイテムの番号を返す
		return ans
	} else {
		// ユーザが「キャンセル」をクリックしたので、メモリからダイアログボックスを削除
		myDialog.destroy();
	}
}



こんな風につかいます。

var myList = ["あいうえお", "かきくけこ", "さしすせそ", "たちつてと"];
var ans_int = listDialog("タイトルタイトル", "選択してください", myList);
myList[ans_int]