Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как удалить MovieClip не зная его имени (http://www.flasher.ru/forum/showthread.php?t=163092)

Neck1T 06.08.2011 12:26

как удалить MovieClip не зная его имени
 
как удалить MovieClip не зная его имени

NikolyA 06.08.2011 14:05

как это не зная его имени? а как ты его создаешь? работаешь с ним?

derhab 06.08.2011 14:47

Цитата:

Сообщение от NikolyA (Сообщение 1018631)
как это не зная его имени? а как ты его создаешь? работаешь с ним?

а при чем тут имя?

Neck1T 06.08.2011 15:03

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

КорДум 06.08.2011 15:13

Цитата:

а при чем тут имя?
По имени тоже можно удалить.
Код AS3:

var maxIndex:uint = numChildren;
for (var i:uin = 0; i < maxIndex; i++) {
    var obj:DisplayObject = getChildAt(0);
    if (!(obj is MovieClip)) continue;
    var mc:MovieClip = obj as MovieClip;
    if (mc.name === "name") {
        removeChild(mc);
        break;
    }
}

Собственно, в этом примере показана работа с getChildAt().

saikspaik 06.08.2011 15:40

removeChildAt() тоже удаляет без имени.

i.o. 06.08.2011 15:50

Цитата:

как удалить MovieClip не зная его имени
Из разряда "как одеть ботинок, не имея ложки?".
Приведите код.

derhab 06.08.2011 19:06

Цитата:

а при чем тут имя?
понятно, но наличие имени это не обязательное условие для удаления
я отвечал NikolyA

fish_r 06.08.2011 19:55

по имени вообще редко кто обращается к объекту - медленно.
удалить можно узнав в каком слое он находится с помощью инструкции
http://www.flasher.ru/forum/images/r..._collapsed.gif Код AS3:
DisplayObjectContainer.removeChildAt(x);
или через обращение к переменной которая хранит ссылку на объект, типа:

http://www.flasher.ru/forum/images/r..._collapsed.gif Код AS3:
DisplayObjectContainer.removeChild(_var);
других вариантов нет.

КорДум 06.08.2011 20:08

Цитата:

удалить можно узнав в каком слое он находится с помощью инструкции
Поправлю (информация для топикстартера): не слое, а какой индекс в дисплей листе имеет. Слои есть только в FlashIDE и исключительно для удобной работы. После компиляции слоев нет.


Часовой пояс GMT +4, время: 09:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.