package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
//ネイティブウィンドウの操作
public class NativeWindowEx extends Sprite {
//素材クラスの定義
[Embed(source='sample.swf')]
private var Sample:Class;
//ウィンドウ
private var window0:NativeWindow;//通常ウィンドウ
private var window1:NativeWindow;//透過ウィンドウ
//コンストラクタ
public function NativeWindowEx() {
//メインウィンドウへのイベント追加
stage.nativeWindow.addEventListener(Event.CLOSE,onClose);
//通常ウィンドウの生成
window0=makeWindow(false,NativeWindowSystemChrome.STANDARD);
window0.x=stage.nativeWindow.x+stage.nativeWindow.width;
window0.y=stage.nativeWindow.y;
//画像の追加
var sprite0:Sprite=new Sample();
window0.stage.addChild(sprite0);
sprite0.x=120;
sprite0.y=120;
//透過ウィンドウの生成
window1=makeWindow(true,NativeWindowSystemChrome.NONE);
window1.x=window0.x+window0.width;
window1.y=window0.y;
//透過ウィンドウへの画像の追加
var sprite1:Sprite=new Sample();
window1.stage.addChild(sprite1);
sprite1.x=120;
sprite1.y=120;
//透過ウィンドウのステージへのイベント追加
window1.stage.addEventListener(
MouseEvent.MOUSE_DOWN,onMouseDown);
}
//新規ウィンドウの生成
private function makeWindow(
transparent:Boolean,systemChrome:String):NativeWindow {
//ウィンドウ初期化オプション
var options:NativeWindowInitOptions=
new NativeWindowInitOptions();
options.type=NativeWindowType.NORMAL;
options.transparent =transparent;
options.systemChrome=systemChrome;
//ウィンドウの生成
var window:NativeWindow=new NativeWindow(options);
window.title ="新規ウィンドウ";
window.stage.align =StageAlign.TOP_LEFT;
window.stage.scaleMode =StageScaleMode.NO_SCALE;
window.stage.stageWidth =240;
window.stage.stageHeight=240;
window.visible =true;
return window;
}
//メインウィンドウのクローズイベントの処理
private function onClose(evt:Event):void {
window0.close();
window1.close();
}
//透過ウィンドウのマウスダウンイベントの処理
private function onMouseDown(evt:MouseEvent):void {
window1.startMove();
}
}
}
|