PDA

Просмотр полной версии : почему не удаляет мувиклип с линией


darksranger
07.07.2008, 08:03
_root.ln=0
path = _root
_root.ln++
clip.head.setTextFormat(headFormat);
path.createEmptyMovieClip("line_mc"+_root.ln, 1);
["line_mc"+_root.ln]lineStyle(1, 0xF7D695, 100);
["line_mc"+_root.ln]moveTo(15,clip._y+30);
["line_mc"+_root.ln]lineTo(480, clip._y+30);

trace(path.line_mc1._visible ) <- true
_root.ln++

path.line_mc1._visible = false < - полоска все так же видна

clip.head.setTextFormat(headFormat);
path.createEmptyMovieClip("line_mc"+_root.ln, 1);
["line_mc"+_root.ln]lineStyle(1, 0xF7D695, 100);
["line_mc"+_root.ln]moveTo(15,clip._y+sizecomentstext+30);
["line_mc"+_root.ln]lineTo(480, clip._y+sizecomentstext+30);
trace(path.line_mc1._visible ) <- уже undefined


ноль реакции-> removeMovieClip(path.line_mc1)

линии создаются, все нормально, но мне их не удалить

trace(path.line_mc1) после создания 1 полоски, выдает путь до нее ( но если тут же ставишь remove, он ее почему то не удаляет, тоесть полоска все так же благополучно показывается ), а вот если трэйсануть после создания второй полоски, то получаю undefined

Тоже самое если трэйсить с атрибутом _visible(trace(path.line_mc1._visible)), в первом варианте пишет true, тоесть видна ( если ставишь false, она всеравно показывается ), после создания второй полоски пишет undefined.

Как можно удалить созданные полоски ? может в создании ошибка ? но, ведь, на сколько я понимаю, нада каждую полоску создавать, под своим инстансом: line_mc1, line_mc2.... lineN соответственно так же к ним обращатся и удалять их

iNils
07.07.2008, 08:53
_root.ln = 0;
path = _root;
_root.ln++;
clip.head.setTextFormat (headFormat);
//// создаем ссылку на клип, ваша запись типа ["line_mc"+_root.ln] фикция, если впереди не стоит ссылка на родительский клип
var mc1:MovieClip = path.createEmptyMovieClip ("line_mc" + _root.ln, 1);
mc1.lineStyle (1, 0xF7D695, 100);
mc1.moveTo (15, clip._y + 30);
mc1.lineTo (480, clip._y + 30);

trace (mc1._visible);
_root.ln++;
mc1._visible = false;

clip.head.setTextFormat (headFormat);
var mc2:MovieClip = path.createEmptyMovieClip ("line_mc" + _root.ln, 1);
mc2.lineStyle (1, 0xF7D695, 100);
mc2.moveTo (15, clip._y + sizecomentstext + 30);
mc2.lineTo (480, clip._y + sizecomentstext + 30);
trace (mc2._visible);
//// забудьте про старый синтаксис, используйте метод мувиклипа
mc1.removeMovieClip ();