繁体   English   中英

Flash As3窗口调整大小问题

[英]Flash As3 Window resize issue

我有一个Flash脚本,我通过addChild添加了一个移动剪辑,我的电影区域为500x400,并且我将movieClip居中对齐。 但是,当我试图在浏览器中设置大小时,它没有对准中心。 我所有的计算都错了。

package {
    import flash.display.*;
    import flash.display.Stage;
    import flash.geom.*;
    import flash.net.*;
    import flash.media.*;
    import flash.utils.Timer;
    import fl.motion.Color;
    import flash.events.*;
    import flash.text.*;
    import flash.system.LoaderContext;
    import flash.system.Security;

    public class main extends Sprite {

        public function main(){
            trace("Hello");


            var btn:_Button = new _Button();
            btn.x= (stage.stageWidth - btn.width)/2
            btn.y= (stage.stageHeight - btn.height)/2
            addChild(btn);
        }
    }
}

这是我的代码

您需要添加侦听器来resizeEvent和FullScreen事件。

public function main():void {
  stage.scaleMode = StageScaleMode.NO_SCALE;
  stage.align = StageAlign.TOP_LEFT;
  ...
  ...
  stage.addEventListener(Event.RESIZE, resizeHandler);
  stage.addEventListener(FullScreenEvent.FULL_SCREEN, resizeHandler);
  ...
}

private function resizeHandler(e:Event):void { btn.x= (stage.stageWidth - btn.width)/2 btn.y= (stage.stageHeight - btn.height)/2 }

如果中心对齐

btn.x = stage.stageWidth / 2;
btn.y = stage.stageHeight / 2;

如果左上方

btn.x = stage.stageWidth / 2 - btn.width / 2;
btn.y = stage.stageHeight / 2 - btn.height / 2;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM