0

私の AIR アプリケーションでは、ユーザーが新しいプロジェクトを作成するときに、プロジェクトの名前を入力できる場所にポップアップ ボックスを表示したいと考えています。 NativeWindowsを使用してこれを行う方法は? つまり、システム クロムを使用して、テキスト フィールドとボタンを含むウィンドウを表示できますか?

FlashDevelop で Flex 4 と AIR 2.7 を使用しています。

4

1 に答える 1

7

はい、できます。新しい NativeWindow を作成するときに、そのステージに子を追加および削除できます。したがって、クラス/コンポーネントを新しいウィンドウに追加して、それらのイベントをリッスンできます。

// create NativeWindowInitOptions
var windowInitOptions:NativeWindowInitOptions = new NativeWindowInitOptions();
windowInitOptions.type = NativeWindowType.NORMAL;
windowInitOptions.minimizable = true;
windowInitOptions.resizable = false;
windowInitOptions.maximizable = false;
windowInitOptions.systemChrome = NativeWindowSystemChrome.STANDARD;
windowInitOptions.transparent = false;

// create new NativeWindow
var newWindow:NativeWindow = new NativeWindow(windowInitOptions);

// create your class
var popupBox:Sprite = new Sprite();

// resize
newWindow.width = popupBox.width;
newWindow.height = popupBox.height;

// add
newWindow.stage.addChild(popupBox);

// configure
popupBox.addEventListener(YourCustomEvent.CONFIRM, onPopupConfirm);

// for a popup it might be nice to have it activated and on top
newWindow.alwaysInFront = true;
newWindow.activate();

onPopupConfirm 関数内で、ウィンドウを閉じて参照をクリーンアップできます。(NativeWindow の Event.CLOSING は、alt+F4 の終了などをキャッチするのに役立ちます)

于 2011-09-01T12:35:10.067 に答える