• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH AS 编程>AS基础篇>AS 3.0>文章内容
  • stage类的应用(AS3.0)

  • 来源: 作者: 2007-11-15 【
Stage 类代表主绘图区。 舞台表示显示 Flash ® 内容的整个区域。

无法以全局方式访问 Stage 对象。 而是需要利用 DisplayObject 实例的 stage 属性进行访问。

stage对齐: align

一个 StageAlign 类中指定舞台在 Flash Player 或浏览器中的对齐方式的值。 以下是有效值:

垂直对齐方式 水平对齐方式
StageAlign.TOP 顶对齐 居中对齐
StageAlign.BOTTOM 底对齐 居中对齐
StageAlign.LEFT 居中对齐 左对齐
StageAlign.RIGHT 居中对齐 右对齐
StageAlign.TOP_LEFT 顶对齐 左对齐
StageAlign.TOP_RIGHT 顶对齐 右对齐
StageAlign.BOTTOM_LEFT 底对齐 左对齐
StageAlign.BOTTOM_RIGHT 底对齐 右对齐

使舞台左对齐顶对齐: stage.align = StageAlign.TOP_LEFT; 

stage缩放属性: scaleMode

一个 StageScaleMode 类中指定要使用哪种缩放模式的值。 以下是有效值:

  • StageScaleMode.EXACT_FIT -- 整个 Flash 应用程序在指定区域中可见,且不发生扭曲,同时保持应用程序的原始高宽比。
    应用程序的两侧可能会显示边框。
  • StageScaleMode.SHOW_ALL -- 整个 Flash 应用程序在指定区域中可见,但不尝试保持原始高宽比。 可能会发生扭曲。
  • StageScaleMode.NO_BORDER -- 整个 Flash 应用程序填满指定区域,不发生扭曲,但有可能进行一些裁切,同时保持应用程序的原始高宽比。
    StageScaleMode.NO_SCALE -- 整个 Flash 应用程序的大小固定,因此,即使播放器窗口的大小更改,它也会保持不变。 如果播放器窗口比
    内容小,则可能进行一些裁切。

ex. stage.scaleMode = StageScaleMode.NO_SCALE;

fullScreen事件

若要启用全屏模式,请将 allowFullScreen 参数添加到包含 SWF 文件的 HTML 页中的 objectembed 标签,同时将 allowFullScreen 设置为 "true",如下例所示:

<param name="allowFullScreen" value="true" />

给swf增加一个全屏按钮: fullBt
代码如下:

fullBt.addEventListener(MouseEvent.CLICK,fullscreenshow);

function fullscreenshow(evt:MouseEvent):void {
   switch (stage.displayState) {
    case "normal" :
     stage.displayState = "fullScreen";
     break;
    case "fullScreen" :
    default :
     stage.displayState = "normal";
     break;
   }

  }

特别强调resize事件

resize事件,可以用来制作自适就尺寸的swf,当swf的播放窗口size改变,触发该事件。

ex.

package {
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
public class StageExample extends Sprite {
public function StageExample() {
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.addEventListener(Event.ACTIVATE, activateHandler);
stage.addEventListener(Event.RESIZE, resizeHandler);
}
private function activateHandler(event:Event):void {
trace("activateHandler: " + event);
}
private function resizeHandler(event:Event):void {
trace("resizeHandler: " + event);
trace("stageWidth: " + stage.stageWidth + " stageHeight: " + stage.stageHeight);
}
}
}



上一篇:AS3.0轻量级缓动工具类TweenLite   下一篇:as3.0中关于深度的操作
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)