Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.12.2008, 13:37
Ar4ibald вне форума Посмотреть профиль Отправить личное сообщение для Ar4ibald Найти все сообщения от Ar4ibald
  № 1  
Ответить с цитированием
Ar4ibald
 
Аватар для Ar4ibald

Регистрация: Nov 2006
Сообщений: 253
По умолчанию уничтожения класса

Здравствуйте, создаю класс, он у меня тип - MovieClip и добавляю в определенный мувик. У меня задача удалить все с этого мувика и класс включительно.
Пробовал таким способом
Код AS3:
var mc = this.parent.getChildByName("nov_mc");
while(mc.numChildren) mc.removeChildAt(0);
После этой процедуры с мувика все исчезает, но класс продолжает работать (видно через trace и некоторые сообщения ).
Как его убрать вообще или остановить?
Спасибо за помощь?
__________________
Living with the smile

Старый 23.12.2008, 13:51
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 2  
Ответить с цитированием
Chas
[+1 14.08.08]
[+1 20.08.08]
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
остановить таймеры, отписать от событий, занулить все внешние ссылки на него.
__________________
~
Never trouble trouble till trouble troubles you!

Старый 23.12.2008, 13:57
Ar4ibald вне форума Посмотреть профиль Отправить личное сообщение для Ar4ibald Найти все сообщения от Ar4ibald
  № 3  
Ответить с цитированием
Ar4ibald
 
Аватар для Ar4ibald

Регистрация: Nov 2006
Сообщений: 253
создаю таким образом
Код AS3:
var gallery_mc1:MovieClip = new Gallery1();
mc.addChild(gallery_mc1);
больше я к этому классу никак не обращаюсь, в событиях он не учавствует. У него есть свои функции конечно, но при удалении с мувика они не прекращают работать.
удаляю ведь с мувика все мувиклипы!
__________________
Living with the smile

Старый 23.12.2008, 14:10
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 4  
Ответить с цитированием
Chas
[+1 14.08.08]
[+1 20.08.08]
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
если на события вы его не подписываете, то какие трейсы и сообщения тогда видите, свидетельствующие о его работе? Подписан он на события значит или взаимодейсвует с другим мувиком. Или у вас на таймлайне код находится(что плохой стиль для AS3) и вы забыли сделать stop ролику(хотя странно, всегда считал, что после removeChild ролик стопится автоматом).
В любом случае, других вариантов, кроме тех, что я описал - нет, так что ищите ОШИБКУ.
__________________
~
Never trouble trouble till trouble troubles you!

Старый 23.12.2008, 15:20
Ar4ibald вне форума Посмотреть профиль Отправить личное сообщение для Ar4ibald Найти все сообщения от Ar4ibald
  № 5  
Ответить с цитированием
Ar4ibald
 
Аватар для Ar4ibald

Регистрация: Nov 2006
Сообщений: 253
у меня он написан на Papervision, а он сам выдает некоторые сообщения даже без трейса. У меня картинка двигаеться в зависимости от положения мыши, но когда я удаляю этот класс, то события продолжаються и выдают ошибку ибо мувика уже нет на сцене. Но чтот тогда получаеться - я перед удалением мувика должен выключить все события в классе? Но это же дико не удобно. Я думал, что при удалении класса, удаление его слушателей подразумеваеться само собой.
__________________
Living with the smile

Старый 23.12.2008, 15:26
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 6  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Нет. Лично я при удалении Класса, наследуемого от Паперовских хреней, запускаю в нём функции самоудаление:
1) Удаляю онЕнтерфреймы и тому подобные;
2) Очищаю массивы, битмапдаты;
3) Всякие Евен.*;
4) Удаляю всякую мелкотню там.

Т.е. это выглядит где-то так:
Код AS3:
this.gallery_mc1 = new Gallery1();
this.mc.addChild(this.gallery_mc1);
...
this.gallery_mc1.destroyItSelf();
this.mc.removeChild(this.gallery_mc1);
this.gallery_mc1 = null;
__________________
john

Старый 23.12.2008, 15:29
Ar4ibald вне форума Посмотреть профиль Отправить личное сообщение для Ar4ibald Найти все сообщения от Ar4ibald
  № 7  
Ответить с цитированием
Ar4ibald
 
Аватар для Ar4ibald

Регистрация: Nov 2006
Сообщений: 253
Код AS3:
destroyItSelf();
я так полагаю это ваша функция, которая удаляет все события и все остальное.

Спасибо.Бум пробовать
__________________
Living with the smile

Старый 23.12.2008, 15:30
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 8  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Да, можно назвать её как Вам угодно.
__________________
john

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:44.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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