确定我创建了一个名为WindowManager的类,到目前为止它只是一种方法,用于创建一个新窗口。您将DisplayObject传递给应该包含在窗口中的DisplayObject。问题是如果我添加一个新创建的显示对象到新窗口,它不会显示。但是,如果我首先将其作为主窗口的新显示对象,然后尝试将其添加到新窗口中,它的工作原理是正确的。AIR:新窗口...将内容添加到它不显示
这里是这个类:
package
{
import flash.display.DisplayObject;
import flash.display.NativeWindow;
import flash.display.NativeWindowInitOptions;
import flash.display.NativeWindowSystemChrome;
import flash.display.NativeWindowType;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.geom.Rectangle;
import flash.display.Screen;
public class WindowManager
{
public function WindowManager()
{
}
public function newWindow(content:DisplayObject):void
{
var windowOptions:NativeWindowInitOptions = new NativeWindowInitOptions();
windowOptions.systemChrome = NativeWindowSystemChrome.NONE;
windowOptions.type = NativeWindowType.NORMAL;
windowOptions.transparent = true;
var newWindow:NativeWindow = new NativeWindow(windowOptions);
newWindow.stage.scaleMode = StageScaleMode.NO_SCALE;
newWindow.stage.align = StageAlign.TOP_LEFT;
newWindow.bounds = new Rectangle(0, 0, content.width, content.height);
newWindow.title = "New Window Number 2";
newWindow.alwaysInFront = true;
newWindow.x = (Screen.mainScreen.bounds.width - newWindow.bounds.width)/2;
newWindow.y = (Screen.mainScreen.bounds.height - newWindow.bounds.height)/2;
newWindow.stage.addChild(content);
newWindow.activate();
}
}
}
如果我这样称呼它:
var notifierBox:NotifierBox = new NotifierBox();
new WindowManager().newWindow(notifierBox);
新窗口将包含nothing..but如果我之前dispay对象添加到主窗口试图将它添加到新窗口它工作正常:
var notifierBox:NotifierBox = new NotifierBox();
addChild(notifierBox);
new WindowManager().newWindow(notifierBox);
有人可以告诉我为什么吗?
谢谢。