OKこれまでは1つのメソッドとして、新しいウィンドウを作成するために、WindowManagerというクラスを作成しました。ウィンドウに含めるべき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);
私は前にメインウィンドウにdispayオブジェクトを追加すると、新しいウィンドウがnothing..but含まれていますそれが正常に動作し、新しいウィンドウに追加しようとしている:
var notifierBox:NotifierBox = new NotifierBox();
addChild(notifierBox);
new WindowManager().newWindow(notifierBox);
して誰かがその理由を教えてもらえますか?
ありがとうございました。