2011-08-19 39 views
1

我正在使用Flash CS5,當我向swf展示我的文件時,我注意到在導出並在Flash播放器中(在我的桌面上)播放它之後,我可以更改窗口大小和場景本身,儘管我已經設置了寬度並且高度尺寸爲例如468x60的。如何禁用Flash桌面播放器中Flash場景的大小調整?

所以,壞事是,如果我有些物體從這個區域移動,並且在橫幅中我沒有看到它們在Flash播放器中,我可以看到所有不好的東西。

是否有一個導出選項設置來禁用此行爲或一些動作,所以我的客戶端將無法看到「幕後混亂」:)?

我大概可以使用動作刪除一些對象,但是如果我有循環背景圖像,它必須大於468px在我的情況下3x。

在此先感謝您的任何建議。

回答

2

獨立版本的Adobe Flash將調整大小,因爲它是一個窗口應用程序。
然而,你可以申請一個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); 
+0

如何在ActionScript 2中做到這一點? – quackquack

+0

@quackquack - 更新了我的回答 – www0z0k

+0

謝謝,現在正在工作;)。非常感謝。 – quackquack

1

你沒有說什麼AS版本。

在AS2中,添加到第一幀 Stage.scaleMode =「noscale」;

在AS3 StageScaleMode.NO_SCALE

編輯//並且,你可以設置一個主掩模層

+0

:(不工作我還可以調整我的flash播放器和AI看到物體是從舞臺在Stage.scaleMode =「 noscale「;不按我需要的方式工作 – quackquack

+0

當然你可以調整你的flash播放器的大小:)但是如果你需要從外面隱藏對象,你必須添加一個具有舞臺大小的遮罩,並在遮罩下添加所有圖層。當然,這取決於你的需求 – vectorialpx

0

來到這裏,從谷歌搜索,需要的www0z0k's answer的AS3版本。萬一別人是在同一條船上,這裏是我落得這樣做:

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;