Доброго время суток.
У меня возникла проблема с циклом

Код:
for(iP = 0;iP < ColPictur; iP++ ){
_root["But" + iP].onRelease = function() {
delete _root.LoadFPicture_1 ;
_root.attachMovie("LoadFPicture", "LoadFPicture_1" , 5010);
var fPic_obj:Object = new Object();
var fPic:MovieClipLoader = new MovieClipLoader();
fPic.loadClip(AdresFullPic[iP] , _root.LoadFPicture_1);
delete fPic;
delete fPic_obj;
delete _root["But" + iP].onRelease;
}
}
Собственно говоря я делаю галерею из картинок, всё сделал и осталось сделать функцию открытии большой картинки при нажатии на маленькую из галереи, честно не ожидал что с этим могут возникнуть проблема а собственно проблема в том что событие onRelease срабатывает но при этом Ip у массива AdresFullPic всё время равен 9 а максимальное значение у цикла это 8, ну то есть ColPictur = 9, такое ощущение что загрузка начинается после прохода всего цикла а у 9го элемента масива просто напросто нет значение по этому и ни чего не загружается , если так оно и есть то тогда как по другому писать код? проверять же нужно каждую кнопку и без цикла не обойтись ни как
В общем решил сделать по другому, убрал for и создал цикл в ручную

Код:
_root["But" + iP].onRelease = function() {
delete _root.LoadFPicture_1 ;
_root.attachMovie("LoadFPicture", "LoadFPicture_1" , 5010);
var fPic_obj:Object = new Object();
var fPic:MovieClipLoader = new MovieClipLoader();
fPic.loadClip(AdresFullPic[iP] , _root.LoadFPicture_1);
delete fPic;
delete fPic_obj;
delete _root["But" + iP].onRelease;
}
If(iP < ColPictur)
{iP++}
else {iP= 0}
Тут честно говоря начался полный дурдом, картинки загружаться начали но в рандомном порядке, то есть нажимаеш на картинку 1 открывается 4, нажимаешь ещё раз на неё открывается 8 и т.д. в чём проблема ни понимаю, iP меняется только после прохода по событию если конечно оно было
Если у кого есть время то подскажите в чём проблема, я уже всю голову изломал разбираясь в чём тут дело, ну или дайте ссылку на описание решения подобной проблемы
Заранее спасибо