ウィンドウメニューを作成する
ウィンドウに次のようなメニューを作成してみます。
アプリケーションに必要な2つのファイルを用意します。(Adobe AIR - HTMLベースでHello World参照)
- sample1-app.xmlアプリケーション記述ファイル
- root.html
メニューの作成例
root.htmlにJavaScriptを記述します。
<script type="text/javascript">
function openfile() {
air.trace("Openが選択されました。");
}
// 初期化
function init() {
createMenu();
}
// メニューの作成
function createMenu() {
var menu = new air.NativeMenu();
var filemenu = new air.NativeMenu();
filemenu.addItem(new air.NativeMenuItem("Open"));
filemenu.addItem(new air.NativeMenuItem("",true)); // セパレータ
filemenu.addItem(new air.NativeMenuItem("Quit"));
filemenu.items[0].addEventListener(air.Event.SELECT,openfile);
menu.addSubmenu(filemenu,"File");
if(air.NativeWindow.supportsMenu) {
window.nativeWindow.menu = menu;
}
}
</script>
<body onload="init()">
createMenuの中で、ルートメニューオブジェクトを作成します。
次にサブメニュー(Fileの部分)を作成し、addItemメソッドによりメニューアイテムを追加します。
選択されたメニューのイベント通知を受け取るように、addEventListenerメソッドでEventDispatcherオブジェクトに登録します。 これにより、メニューのOpenが選択されると「openfile()」が呼ばれます。
ルートメニューにサブメニューを追加し、ウィンドウにメニューを登録します。
air.NativeWindow.supportsMenuの評価部分は、Mac OS Xではサポートされていないためサポートされている場合のみ メニューを追加するようにしています。