EnSonar
14.11.2003, 20:30
Здравствуйте!
Сегодня все утро провозился со след. проблемой. Есть сайт, и есть флэшка. Задача: из сайта посылать команды флэш-ролику нарисовать нужное количество одинаковых вкладок (читай: картинок).
С флэшем общаться умею только через setVariable, а посему механизм я реализовал следующий: на главную сцену во флэше положил мувиклип, состоящий из одного кадра, на который повесил action, который, как мне думается, должен испольняться бесконечно, мне так и нужно:
onClipEvent(enterFrame){
/* здесь _root.barsCount - количество вкладок, необх. для
рисования в данный момент , оно передается в мувик из сайта
через javascript: movieName.setVarialble('barsCount', 1) */
if(_root.barsCount != _root.prevBarsCount){
if(_root.barsCount != _root.prevBarsCount){
// сносим предыдущие вкладки
for(var i = 1; i <= _root.prevBarsCount; i++){
removeMovieClip("passiveBar" + i);
}
_root.prevBarsCount = _root.barsCount;
// рисуем столько barsCount пассивных вкладок
for(var j = 1; j <= _root.barsCount; j++){
var s = eval("passiveBar" + int(j+1));
duplicateMovieClip(_root.passiveBar, s, j + 1);
eval(s)._y = 25*j - 25;
eval(s)._visible = true;
}
}
}
}
Так вот, этот код срабатывает, но очень криво: картинки рисуются не там, где надо, или вообще не рисуются. Но! Если этот код повесить на нажатие кнопочки (button), то все ок!
Подскажите, в чем я не прав?
Сегодня все утро провозился со след. проблемой. Есть сайт, и есть флэшка. Задача: из сайта посылать команды флэш-ролику нарисовать нужное количество одинаковых вкладок (читай: картинок).
С флэшем общаться умею только через setVariable, а посему механизм я реализовал следующий: на главную сцену во флэше положил мувиклип, состоящий из одного кадра, на который повесил action, который, как мне думается, должен испольняться бесконечно, мне так и нужно:
onClipEvent(enterFrame){
/* здесь _root.barsCount - количество вкладок, необх. для
рисования в данный момент , оно передается в мувик из сайта
через javascript: movieName.setVarialble('barsCount', 1) */
if(_root.barsCount != _root.prevBarsCount){
if(_root.barsCount != _root.prevBarsCount){
// сносим предыдущие вкладки
for(var i = 1; i <= _root.prevBarsCount; i++){
removeMovieClip("passiveBar" + i);
}
_root.prevBarsCount = _root.barsCount;
// рисуем столько barsCount пассивных вкладок
for(var j = 1; j <= _root.barsCount; j++){
var s = eval("passiveBar" + int(j+1));
duplicateMovieClip(_root.passiveBar, s, j + 1);
eval(s)._y = 25*j - 25;
eval(s)._visible = true;
}
}
}
}
Так вот, этот код срабатывает, но очень криво: картинки рисуются не там, где надо, или вообще не рисуются. Но! Если этот код повесить на нажатие кнопочки (button), то все ок!
Подскажите, в чем я не прав?