Загрузка серии нескольких SWF-файлов в мувиклипе в AS2 - PullRequest
0 голосов
/ 15 января 2010

Я пытаюсь загрузить серию внешних SWF-файлов в мувиклип на сцене. Размер 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 
        } 

ТНХ Амит

1 Ответ

1 голос
/ 15 января 2010

РЕДАКТИРОВАТЬ (новый ответ): Я думаю, что проблема заключается в том, что ваш загруженный SWF сохраняет предыдущие свойства _xscale и _yscale container_mc.

Если вы попытались установить container_mc._width и ._height, когда container_mc был пустым клипом, то flash (причудливо) меняет масштаб на ноль - когда ваш SWF-файл загружается, он также имеет нулевой масштаб, поэтому установите _width и _height не имеет никакого эффекта.

Вы можете проверить это с помощью trace("scale = "+thisMc._xscale+" x "+thisMc._yscale);

Исправление будет заключаться в том, чтобы изначально поместить что-то в container_mc (скажем, квадрат 400x400). Вы можете скрыть это, пока ваш SWF не загрузится.

...