加载swf文件

时间:2011-12-19 05:55:40

标签: flash actionscript-3

我想加载一个位于外部服务器的SWF文件,并在客户端播放。我在这方面取得了成功,但是当它加载时我遇到了对齐问题。我使用以下代码:

import flash.display.*;
import flash.net.URLRequest;

var rect:Shape = new Shape();
rect.graphics.beginFill(0xFFFFFF);
rect.graphics.drawRect(0,0,1000,1000);
addChild(rect);

var ldr:Loader = new Loader();
ldr.mask = rect;
var url:String = "http://www.unknown.example.com/content.swf";
var urlReq:URLRequest = new URLRequest(url);
ldr.load(urlReq);
addChild(ldr);

它加载得很好,但是当我最大化帧时,视频对齐正在改变,只有一半的视频在屏幕上可见。

2 个答案:

答案 0 :(得分:0)

尝试在代码顶部添加第1帧:

import flash.display.StageScaleMode;
import flash.display.StageAlign;

stage.scaleMode = StageScaleMode.NO_SCALE;// Don't scale the contents of the swf (you may not want to use this
stage.align = StageAlign.TOP_LEFT;// Align the stage to the top left corner of the screen

您可能还需要将其添加到其他swf中,但我不确定。

答案 1 :(得分:0)

import flash.display.StageScaleMode;
import flash.display.StageAlign;

stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;

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

rect始终位于舞台的中心。通过找到舞台的宽度然后将其除以2来计算舞台的中心。我们只是将其设置为rect的.x属性的值,它将完成工作。同样的事情也适用于rect的舞台高度和.y属性。