As3场景设置学习

[SWF(width="800", height="600", backgroundColor="#fffff", frameRate="31")] //定义场景
import flash.display.Stage;//表示场景类
import flash.display.StageScaleMode;//调整大小场景类,常用有NO_SCALE跟据场景大小来调整自适应大小
import flash.display.StageAlign;//调整对齐场景类
import flash.display.StageDisplayState//调整场景是否全屏
import flash.events.FullScreenEvent;//用于侦听”调整场景是否全屏”

StageScaleMode.EXACT_FIT 按比例缩放 SWF。
StageScaleMode.SHOW_ALL 确定是否显示边框(就像在标准电视上观看宽屏电影时显示的黑条)。
StageScaleMode.NO_BORDER 确定是否可以部分裁切内容。
StageScaleMode.NO_SCALE,则当查看者调整 Flash Player 窗口大小时,舞台内容将保持定义的大小。
swfStage.addEventListener(Event.RESIZE, resizeDisplay);
mySprite.stage.displayState = StageDisplayState.FULL_SCREEN;//全屏
mySprite.stage.displayState = StageDisplayState.NORMAL;//退出全屏
mySprite.stage.addEventListener(FullScreenEvent.FULL_SCREEN, fullScreenRedraw);
swfStage.align = StageAlign.TOP_LEFT;//左上角对齐
swfStage.align = StageAlign.TOP_RIGHT;//右上角对齐
swfStage.align = StageAlign.TOP;//顶对齐
swfStage.align = StageAlign.RIGHT;//右对齐
swfStage.align = StageAlign.LEFT;//左对齐
swfStage.align = StageAlign.BOTTOM;//底对齐
swfStage.align = StageAlign.BOTTOM_LEFT;//左下角对齐
swfStage.align = StageAlign.BOTTOM_RIGHT;//右下角对齐

示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package {
	import flash.display.Sprite;
	import flash.display.MovieClip;
	import flash.display.Stage;
	import flash.display.StageScaleMode;
	import flash.display.StageAlign;
	import flash.events.Event;
	public class StageScaleMode1 extends Sprite {
		private var swfStage:Stage;//定义变量swfStage为场景变量***  
		private var top:my_top=new my_top();
		private var bot:my_top=new my_top();
		public function StageScaleMode1() {
			addChild(top);
			addChild(bot);
			swfStage = top.stage;//定义一个要跟随场景变化的变量*** 
			//申明场景变swfStage大小为自定义于场景大小***   
			swfStage.scaleMode = StageScaleMode.NO_SCALE;  
			//对齐方试跟据元件内***   
			swfStage.align = StageAlign.TOP_LEFT;
			//大小侦听***
			swfStage.addEventListener(Event.RESIZE,stagescale);  
		}
		private function stagescale(e:Event) {
			top.scaleX = swfStage.stage.stageWidth;//top的自动宽度   
			bot.scaleX = swfStage.stage.stageWidth;//bot的自动宽度   
			bot.y=stage.stageHeight;
			bot.alpha=0.2;
		}
	}
}


Leave a Reply