![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 12
|
Картинки должны следовать одна за другой. Я думаю что не принципиально, будут ли они двигаться как сделано по ссылке что я вам Давал или будут стоять на месте. Скрипт как мне кажется будет один и тот же, просто в клипе задать, чтобы полоса прокрутки перемещалась вправо или влево.
--------------- уехал в 17 лет. когда началась вся бадяга с тем, кто оккупант а кто нет. Сейчас уже думаю все, что не делается все к лучшему. |
|
|||||
|
Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
|
import mx.utils.Delegate;
class MultiImgLoader {
private var imgLoader:MovieClipLoader;
private var imgList:Object;
private var imgNumber:Number = 1;
private var imgPath:String = "";
private var imgPrefix:String = "";
private var target:MovieClip;
private var firstX:Number;
private var valueX:Number = -200;
private var valueY:Number = 0;
private var imgWidth:Number = 200;
private var imgHeight:Number = 200;
private var tempMc:MovieClip;
public function MultiImgLoader(){
firstX = valueX;
imgLoader = new MovieClipLoader();
imgList = new Object();
imgLoader.addListener(imgList);
target = _root;
}
public function loadJPGImages(path:String, prefix:String):Void{
if(imgPath == ""){imgPath = path; imgPrefix = prefix;}
imgList.onLoadError = Delegate.create(this, function(){finish(tempMc)});
imgList.onLoadComplete = Delegate.create(this, continueLoad);
imgLoader.loadClip(imgPath + imgPrefix + imgNumber + ".jpg", imgPlace());
}
private function continueLoad():Void{
trace(imgNumber + " pic(s) loaded")
imgNumber++;
loadJPGImages();
}
private function finish(mc:MovieClip):Void{
if(mc.getBytesTotal() <= 0){
trace("All images loaded!");
}else{
trace("Error loading image!")
}
}
//вот эта функция располагает файлы....в дальнейшем можно будет вывести отдельным
классом с разными методами разположения картинок. А пока так:
private function imgPlace():MovieClip{
var mc:MovieClip;
var mc2:MovieClip;
mc = target.createEmptyMovieClip("imgPlace" + imgNumber, target.getNextHighestDepth());
//mc2 = target.attachMovie("border1", "border1", target.getNextHighestDepth());
trace("valueX + imgWidth " + (valueX + imgWidth))
if(valueX + imgWidth > Stage.width){
valueX = firstX + imgWidth;
valueY += imgHeight;
}else{
valueX += imgWidth;
}
mc._x = valueX;
mc._y = valueY;
//mc2._x = mc._x
//mc2._y = mc._y
trace(mc._x);
trace(mc._y);
trace("--------");
tempMc = mc;
return mc;
}
}
Последний раз редактировалось CrazyFlasher; 27.07.2007 в 18:16. |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 12
|
В первый раз сталкиваюсь с файлами с расширением "as")) Где должен лежать этот файл? в папке с картинками или отдельно, рядом с флешкой. И во фрейме, вы имели ввиду в клипе? И как я понял, картинки будут обзываться img1.jpg, img2.jpg и так далее.
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 12
|
Тот код который прописывается в флешке, он прописывается для все клипа как я понимаю а не для отдельного кадра или объекта.?
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Цитата:
|
|
|||||
|
Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
|
создаёте файл MultiImgLoader.as к примеру в той же папки где и fla файл. Во fla файле в главной временой шкале в 1 фрейме пишете 2-ой код.
не обязательно img. Префикс можно менять: picLoader.loadJPGImages("images/", "img"); - второй переметр это часть имени картинки...сегодня может улучшу код =) сделаю побольше фич =) ----- Внёс некие изменения в код. Это чтобы проверялось на самом ли деле все файлы загружены или у нас оборвалось соединение. Кстати, есть идея как загружать без использования XML или текстового файла все картинки из папки, не зная их имён? =) я думаю, что скорее всего Security нам это не позволит =) но может есть выход? =) Последний раз редактировалось CrazyFlasher; 27.07.2007 в 18:10. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Цитата:
|
|
|||||
|
Banned
[+1 21.02.08]
[+4 21.02.08] [+5 13.03.08] [+4 13.03.08] Регистрация: Feb 2008
Сообщений: 63
|
CrazyFlasher,хороший класс.Только вот позволю себе заметить,_root в классах писать не рекомендуется.
|
|
|||||
|
Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
|
писал его относительно давно...так а что мешает переделать?
передавать таргет: |
|
|||||
|
Banned
[+1 21.02.08]
[+4 21.02.08] [+5 13.03.08] [+4 13.03.08] Регистрация: Feb 2008
Сообщений: 63
|
ну воть.
А в конструкторе я б cделал так: public function MultiImgLoader(prmStage){
firstX = valueX;
imgLoader = new MovieClipLoader();
imgList = new Object();
imgLoader.addListener(imgList);
this._stage = prmStage;
}
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:02. |
|
|
« Предыдущая тема | Следующая тема » |
|
|