JXA でダイアログ
# 最終更新日 2019.20.06.14
アラート
#!/usr/bin/osascript let app = Application.currentApplication(); app.includeStandardAdditions = true; // alert let r = app.displayAlert('日本語も問題無し', { message: 'buttonReturned が戻るので変数に入れています' });
プロンプト
#!/usr/bin/osascript let app = Application.currentApplication(); app.includeStandardAdditions = true; // prompt try { let res = app.displayDialog('プロンプト', { defaultAnswer: 'esc はキャンセル扱いになる' }).textReturned; console.log(`[${res}] が入力されました`); } catch(e) { console.log('キャンセルされました'); }
Yes/No ダイアログ
#!/usr/bin/osascript let app = Application.currentApplication(); app.includeStandardAdditions = true; // Yes No try { let yn = app.displayDialog('あなたはエッチですか?', { buttons: ['いやんエッチ!', 'はいエッチです'], defaultButton: 'はいエッチです', cancelButton: 'いやんエッチ!', withIcon: 'caution' }); console.log('このドスケベ!'); } catch(e) { console.log('うそつき!'); }
リストから選択
#!/usr/bin/osascript let app = Application.currentApplication(); app.includeStandardAdditions = true; // List 選択 let b = app.chooseFromList(['YAMAHA', 'KAWASAKI', 'SUZUKI', 'HONDA'], { withPrompt: 'どのバイクメーカーが好き?', defaultItems: ['SUZUKI'] }); if (b) { if (b[0] === 'SUZUKI') { console.log('やっぱり SUZUKI だね!'); } else { console.log('わかってねーな...'); } } else { console.log('選べよ!'); }
通知
#!/usr/bin/osascript let app = Application.currentApplication(); app.includeStandardAdditions = true; // Notifications app.displayNotification('おはよう',{ withTitle: 'ぼくノラクロ', subtitle: '起きる時間だよ、起きろー' });
Copyright(C) sasakima-nao All rights reserved 2002 --- 2024.