如何在Flash桌面播放器中禁用Flash场景的大小调整?

时间:2011-08-19 07:50:25

标签: flash

我正在使用Flash CS5,当我将文件显示为swf时,我注意到在Flash播放器(在我的桌面上)导出和播放后,我可以更改窗口的大小和场景本身,尽管我设置了宽度和高度尺寸例如468x60的。

所以,最糟糕的是,如果我有一些从这个区域移动的物体并且在横幅中我没有在flash播放器中看到它们,我可以看到所有不好的物体。

导出选项中是否有设置禁用此行为或某些动作脚本,因此我的客户端将无法看到“乱七八糟的幕后”:)?

我可以使用actionscript删除一些对象,但是如果我有循环背景图像,则必须大于468px在我的情况下是3x。

提前感谢任何建议。

3 个答案:

答案 0 :(得分:2)

独立的flashplayer将可调整大小,因为它是一个窗口应用程序 但是,您可以将468x60 mask应用于根DisplayObject

<强> UPD:

var maskMC:MovieClip = _root.createEmptyMovieClip("mask", _root.getNextHighestDepth());
maskMC.beginFill(0x000000, 100);
maskMC.moveTo(0, 0);
maskMC.lineTo(0, 60);
maskMC.lineTo(468, 60);
maskMC.lineTo(468, 0);
maskMC.lineTo(0, 0);
_root.setMask(maskMC);

答案 1 :(得分:1)

你没说AS版本。

在AS2中,添加到第一帧 Stage.scaleMode =“noscale”;

在AS3中 StageScaleMode.NO_SCALE

编辑//并且,您可以设置主遮罩层

答案 2 :(得分:0)

来自谷歌搜索,需要AS3版本的www0z0k's answer。如果其他人在同一条船上,这就是我最终做的事情:

var square:Sprite = new Sprite();
addChild(square);
square.graphics.beginFill(0x000000);
square.graphics.drawRect(0, 0, this.width, this.height);
square.graphics.endFill();
square.x = 0;
square.y = 0;
this.mask = square;