Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Грузить не в контейнер (http://www.flasher.ru/forum/showthread.php?t=122733)

Kalabania 17.03.2009 17:02

Грузить не в контейнер
 
Код:

var loadListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(loadListener);
mcLoader.loadClip(_root.image_url, container);

вот собственно код загрузки в container, но почему то картинки загружаются не в мой мувик(container) который маленький и расположен сверху окна,а в полный размер и снизу окна, и совсем не обрезает их мой мувик.

nOobCrafter 17.03.2009 17:18

вполне логично что контейнер растягивается под размер содержимого... все операции по модификации параметров контейнера надо проводить по событию onLoadInit, когда известны размеры загруженной фотки (и контейнера соответственно) и все буит хорошо.

Kalabania 17.03.2009 18:28

вот нашел такой код
Код:

// _mcR - мувик, размеры которого надо изменить
// _mc - мувик, по размерам котоорого происходит ресайз
// f - если false, то _mc описывает прямоугольник со сторонами _w, _h, иначе вписывается внутрь этого прямоугольника


onLoadInit = function () {
        function fullMc(_mcR:MovieClip, _mc:MovieClip, f:Boolean):Void {
        var k:Number = f ? Math.min(_mc._width/_mcR._width, _mc._height/_mcR._height) : Math.max(_mc._width/_mcR._width, _mc._height/_mcR._height);
        _mcR._yscale = _mcR._xscale *= k;
        _mcR._x = _mc._x+(_mc._width-_mcR._width)/2;
        _mcR._y = _mc._y+(_mc._height-_mcR._height)/2;
   
};
};
var mcl:MovieClipLoader = new MovieClipLoader();
mcl.addListener(this)
mcl.loadClip("101.jpg",_mcR)

в _mcR грузит картинку но не резайзит ее под _mc почему то

nOobCrafter 17.03.2009 18:56

Это вы к воздуху обращаетесь?..
Код AS1/AS2:

var loadListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
loadListener.onLoadInit = function ()
{
  .....
}
mcLoader.addListener(loadListener);
mcLoader.loadClip(_root.image_url, container);


cleptoman 17.03.2009 19:00

эммм...
а где вызывается fullMc?

Код AS1/AS2:

onLoadInit = function(){
  target._width = your_width;
  target._height = your_height;
}
 
var your_width:Number = 100; // пишите значение нужной вам ширины
var your_height:Number = 100; // пишите значение нужной вам высоты
 
var src:String = "101.jpg" // путь к загружаемой картинке
var target:MovieClip = mc // мувик куда загружаем
 
var loader:MovieClipLoader = new MovieClipLoader();
loader.addListener(this);
loader.loadClip(src,target);


Kalabania 17.03.2009 19:18

Круто спасибо заработало!!
а я писал по другом
Код:

this.createEmptyMovieClip ("mc", this.getNextHighestDepth ());
mc._x = 0.0;
mc._y = -1.5;
mc._width = 235;
mc._height = 59;
mc.loadMovie ("15.jpg");

но так при изменении картинок она по разному зжималась, а не в заданых мной размерах

lexa2000lexa 18.03.2009 11:56

Потому что нужно использовать класс MovieClipLoader событие onLoadInit, так как loadMovie не отслеживает момент полной загрузки.


Часовой пояс GMT +4, время: 14:03.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.