AS3 AIR - всплывающее окно NativeWindow - PullRequest
0 голосов
/ 01 сентября 2011

В моем приложении AIR, когда пользователь создает новый проект, я хочу, чтобы появилось всплывающее окно, в которое они могут ввести имя своего проекта. Я понимаю, как это можно сделать, создавая свой тип всплывающего окна,но есть ли способ сделать это с помощью NativeWindows?То есть можно ли создать окно с использованием системного Chrome, содержащее текстовое поле и кнопку?

Я использую Flex 4 и AIR 2.7 в FlashDevelop.

1 Ответ

6 голосов
/ 01 сентября 2011

Да, вы можете. При создании нового 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 вы можете закрыть окно и очистить ссылки. (Event.CLOSING в NativeWindow, может пригодиться для отлова закрытия alt + F4 и т. Д.)

...