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

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

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

Регистрация: Mar 2015
Сообщений: 23
Question Проблемы с addChild, глюк АS3?

Доброго времени суток всем зашедшим в топик!

Суть: поясню на пальцах, есть флешка в несколько кадров, в каждом кадре есть свои динамические текстовые поля, которые обновляются лишь при входе в кадр (в зависимости от выбраного в флешке языка).
В первом кадре пишу функцию, которая вытягивает из библиотеки 1 мувиклип создает его экземпляры на сцене с заданными координатами:
Код AS3:
var helpField: MovieClip;
 
function func_ShowTip( X: Number, Y: Number) {
helpField = new helpField_mc();
addChild(helpField);
}
В некоторых кадрах обращаюсь к этой функции, всё работает. При перепрыгивании из кадра в кадр удаляю детей:
Код AS3:
if (helpField != null) {
		removeChild(helpField);
		helpField = null;
	}
Проблема: при переходе из некоторых кадров в другие вылетает ошибка:
«TypeError: Error #1009: Cannot access a property or method of a null object reference.»
Как удалось выяснить экспериментальным путем, (разместил трейсер в том кадре на котором происходит сбой):
Код AS3:
trace (textField3); // [object TextField]  - когда всё ОК
trace (textField3); // null – когда сбой
непонятно почему и как, после нескольких прыжков по кадрам флеш перестает видеть текстовое поле, как я понимаю. В режиме отладки, при сбое отладчик как раз указывает именно на одно и тоже динамическое текстовое поле. Но, быть может во время удаления чайлда происходит что то страшное? Кста, на чайлдов слушателей не навешиваю. Еще мысли - методом addChild дети добавляются на весь stage, а может нужно как то именно в кадр добавлять?
Попытки устранить проблему, которые не увенчались успехом:
1) пробовал переименовывать «проблемное» динам. текст. поле;
2) пробовал создать совсем новое динамич. текст. поле с другим шрифтом, кегелем, именем и т.д.;
3) если убрать «проблемное» динам. текст. поле – проблема исчезает вместе с ним, но без него никак. Как то странно получается, что флеш цепляется именно к вновь созданному или же проблемному динам. текстовому полю в том кадре…;
4) если не пользоваться функцией func_ShowTip, то проблема так же не появляется.

Буду очень признателен любым мыслям по этому поводу, заранее спасибо!

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

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

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


 


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


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