PDA

Просмотр полной версии : Помогите разобраться с вызовом функции


kichSman
26.09.2009, 22:36
У меня такая задача, хочу оптимизировать код, но столкнулся со следующей проблемой.

Рисование происходит через отдельно созданную функцию

function Pain_strlk (p_strlk_name:MovieClip,p_strlk_x:Number,p_strlk_color){
with (p_strlk_name) {
beginFill(p_strlk_color);
moveTo(0, 6);
lineTo(12,0);lineTo(12,12);
endFill();
_x=p_strlk_x;
}
}

программно строятся клипы:

this.createEmptyMovieClip("strlk_mov1", 1);
stlk_mov1.duplicateMovieClip("strlk_mov2",2,{_x:15});
stlk_mov1.duplicateMovieClip("strlk_mov3",3,{_x:30});
stlk_mov1.duplicateMovieClip("strlk_mov4",4,{_x:45});

как через for сделать так, чтобы функция применялась к каждому клипу? Пытался сделать так:

hz=15;
for(pop=1;pop<=4;pop++){
var hu:MovieClip = this["strlk_mov"+pop];
hz+=15;
Pain_strlk(hu,hz,fon_col);
hu.onRollOver = function(){
sss.text = this._name;
}
}

ничего не получается, компилятор ругается на with

Kuruki
26.09.2009, 23:04
текст ошибки какой?

kichSman
26.09.2009, 23:23
текст ошибки какой?

Error: A 'with' action failed because the specified object did not exist.

Error: A 'with' action failed because the specified object did not exist.

Error: A 'with' action failed because the specified object did not exist.

Kuruki
26.09.2009, 23:34
strlk_mov1.duplicateMovieClip("strlk_mov2",2,{_x:15});
strlk_mov1.duplicateMovieClip("strlk_mov3",3,{_x:30});
strlk_mov1.duplicateMovieClip("strlk_mov4",4,{_x:45});

kichSman
26.09.2009, 23:39
strlk_mov1.duplicateMovieClip("strlk_mov2",2,{_x:15});
strlk_mov1.duplicateMovieClip("strlk_mov3",3,{_x:30});
strlk_mov1.duplicateMovieClip("strlk_mov4",4,{_x:45});

Стыд мне и позор, стыд мне и позор! Пора отдыхать, целый день кодил вот и промахиваюсь уже))))
Спасибо огромное, что ткнули в лужу ))