Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 25.08.2008, 17:54
GreatRash вне форума Посмотреть профиль Отправить личное сообщение для GreatRash Найти все сообщения от GreatRash
  № 1  
Ответить с цитированием
GreatRash

Регистрация: Jun 2007
Сообщений: 118
По умолчанию Проблема с onLoadInit

Пытаюсь сделать галерею. Есть такой код:

Код:
// создаем загрузчик клипов
var loader:MovieClipLoader = new MovieClipLoader();
// создаем слушатель для загрузчика
var listener:Object = new Object();
// добавляем слушатель к загрузчику
loader.addListener(listener);

var dist:Number = 12;

// создаем объект XML
var my_xml:XML = new XML();
// игнорируем пробелы
my_xml.ignoreWhite = true;

my_xml.onLoad = function(success:Boolean) {
if (success) {
 // узнаем сколько всего картинок
 var total = my_xml.firstChild.childNodes.length;

 // запускаем цикл по XML
 for (var i = 0; i<total; i++) {
  var image:String = my_xml.firstChild.childNodes[i].attributes.small;

  var cont:MovieClip = container_mc.createEmptyMovieClip("cont"+i, i);
  var img:MovieClip = cont.createEmptyMovieClip("img", 1);

  loader.loadClip(image,img);

  // это номер клипа
  cont.count = i;

  listener.onLoadInit = function(target:MovieClip) {
   if (target._parent.count%2 == 0) {
    target._y = (98-target._height/2)-10;
   } else {
    target._y = (98-target._height/2)+10;
   }

   target._x = target._width*target._parent.count;
   trace(target._parent.count);
  };
 }
}
};

// грузим XML
my_xml.load("gallery.xml");
Проблема в том, что картинки в галерее имеют одинаковую высоту, но разную ширину.
И для того, чтобы узнать как расположить картинки я внутри onLoadInit умножаю ширину текущего клипа на счетчик target._parent.count, в котором содержится номер текущего клипа (0, 1, 2, 3, 4, 5, 6).

Но проблема в том, что trace(target._parent.count); выдает номера клипов в обратном порядке, т.е. (6, 5, 4, 3, 2, 1). Из-за чего все картинки расставляются как попало.

Помогите пожалуйста решить проблему и расставить картинки как положено.

Создать новую тему   Часовой пояс GMT +4, время: 19:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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