簡単なAppleScriptを書いているときに困るのがButtonとテキスト値を同時に得るときです。
ひとつの値だけですと、resultに値を入れて変数に渡せばすみますが、
display dialogで“OK”ボタンを押すようになると、resultに”OK”が入ってしまい、
後の処理に困ることがあります。
AppleScriptの場合、ボタンでは三分岐できますが、テキストの値が欲しい場合は
扱いがうまく出来ません。そこで例文を探してみました。
すると、結果をリストに入れて、そこからボタンとテキストを取り出す。
という方法がありました。
二つの値ごとリストに入れてしまう。という方法です。
さらに、1より大きく10より小さい。という範囲指定にも困っていましたので
ちょうど良い解決方法が見つかり助かりました。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
──────────引用
set ans to (display dialog “エンコードする文字列を入力してください” default answer “” buttons ({“UTF-8でエンコード”,”EUCJPでエンコード”})–一行で書く
set inPh to text returned of ans
set mode to button retrurned of ans
inph & ” ” & mode
──────────引用終わり
キーポイントは一行で書く。というところですね。
AppleScript Editorでコンパイルしてみました。
こちらから引用させていただきました。ありがとうございます。
- set ans to (display dialog “エンコードする文字列を入力してください“ default answer ¬
- ““ buttons {“UTF–8でエンコード“, “EUCJPでエンコード“})
- –すべて1行で続ける
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー