我试图将一系列外部Swfs加载到舞台上的Movieclip中。 swf的尺寸为800 x 600,而容器的尺寸为400 X 400.
每当我尝试在容器中加载外部swf时,容器将采用加载的swf的大小而不是400 x 400.如何克服这个问题?
我希望任何加载到容器中的swf为400 x 400
我正在使用以下代码:
var movLoad:MovieClipLoader = new MovieClipLoader();
var myListener:Object = new Object();
myListener.onLoadInit = function(thisMc:MovieClip) {
thisMc._height = 400;
thisMc._width = 400;
};
movLoad.addListener(myListener);
btnNext.onPress = function()
{
loadSwf("myswf_file1.swf");//will change name accordingly.
}
function loadSwf(swf)
{
movLoad.loadClip(swf, container_mc);
// myswf1.swf is a swf which could be of any size .
// container_mc is movieclip on stage.
//container_mc has dimension 400 x 400
}
THX 阿米特
答案 0 :(得分:1)
编辑(新答案):
我认为问题是你加载的swf保留了container_mc的先前_xscale
和_yscale
属性。
如果您在container_mc为空剪辑时尝试设置container_mc._width
和._height
,则flash(奇怪)将其比例更改为零 - 当您的swf加载时,它也具有零刻度,因此设置_width
和_height
无效。
您可以使用trace("scale = "+thisMc._xscale+" x "+thisMc._yscale);
修复方法是先将东西放入container_mc(比如说400x400平方)。你可以隐藏它,直到你的swf加载。