Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Array в Class
Flash Zone Forum > Macromedia Flash > ActionScript
wialy
Есть класс с конструктором:

CODE
class Gallery {
var target:MovieClip;
var total:Number;
var thumbs:Array;
function Gallery(t:MovieClip, nm:String, c:Number) {
target = t;
total = c;
thumbs = [];
for (var i = 0; i<total; i++) {
var o = {img:"thumb_"+(i+1)+".jpg"};
var item = target.attachMovie("Thumb", nm+"_thumb_"+i, i, o);
thumbs.push(item);
}
}
function gShowThumbs() {
trace(thumbs);
}
function gShowCount() {
trace(total);
}
}


И его обьект:

CODE
var g1 = new Gallery(this, "first", 5);


При вызове:
CODE
g1.gShowThumbs();
g1.gShowCount();


Output:
_level0.first_thumb_0,_level0.first_thumb_1,_level0.first_thumb_2,_level0.first_
thumb_3,_level0.first_thumb_4
5

То есть все в порядке. Но в случае если обьектов 2:

CODE
var g1 = new Gallery(this, "first", 5);
var g2 = new Gallery(this, "second", 3);

g1.gShowThumbs();
g1.gShowCount();
g2.gShowThumbs();
g2.gShowCount();


Output:

,,,_level0.first_thumb_3,_level0.first_thumb_4
5
_level0.second_thumb_0,_level0.second_thumb_1,_level0.second_thumb_2
3

Почему массив трактуется как static и что делать? private пробовал - zero effect. Help please
tiHo
может я ща скажу чушь, но вроде если неуказывать какой класс(динамич, или статич) то он буит статич по умолчанию. попробуй сделай укажи dynamic
wialy
Цитата(tiHo @ 9.07.2007 - 15:54) *
может я ща скажу чушь, но вроде если неуказывать какой класс(динамич, или статич) то он буит статич по умолчанию. попробуй сделай укажи dynamic


Пробовал - не помагает. Работает корректно (только) через attachMovie
Русская версия IP.Board © 2001-2009 IPS, Inc.