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

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

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

Регистрация: Mar 2009
Адрес: Екатеринбург
Сообщений: 30
Отправить сообщение для Maraekb с помощью ICQ
По умолчанию Обращение к детям addChild

Подскажите пожалуйста как сделать так чтобы можно было обращаться к динамически созданым детям, или как задать им имя для последующего обращения?
Код AS3:
for (var i:* = 0; i<5 ; ++i)
{
	var clip:MovieClip = new MovieClip;
	addChild(clip)
}
Если можно то с примером)
Зарание Спасибо!

Старый 19.05.2010, 16:48
proxiServer вне форума Посмотреть профиль Отправить личное сообщение для proxiServer Найти все сообщения от proxiServer
  № 2  
Ответить с цитированием
proxiServer
 
Аватар для proxiServer

Регистрация: Jun 2006
Сообщений: 400
Код AS3:
			var mcArr:Array = new Array;
			for (var i:* = 0; i<5 ; ++i)
			{
				var clip:MovieClip = new MovieClip;
				addChild(clip)
				mcArr.push(clip);
			}
			removeChild (mcArr[2]);

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

Регистрация: Mar 2009
Адрес: Екатеринбург
Сообщений: 30
Отправить сообщение для Maraekb с помощью ICQ
Тоесть все обращения надо проводить через массивы?

Старый 19.05.2010, 16:52
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 4  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
Подходов много.

Этот подход дает имя, но никогда так не делайте)))

Код AS3:
var s:Sprite = new Sprite( );
addChild(s);
s.name = "clip";
 
s.x = 100;
 
trace(s.x);
trace(getChildByName("clip").x);
Этот подход из этой же серии, но другой и тоже плох:

Код AS3:
var str:String = "clip";
var clip:Sprite;
 
for (var i:uint = 0; i < 5 ; i++)
{
	clip = new Sprite( );
	clip.x = 10 * i;
	this[str + i] = clip;
}
 
trace(this[str + 3].x);
Хороший подход хранить элементы, если к ним понадобится доступ в массиве (или лучше векторе):

Код AS3:
var clips:Array = [];
var clip:Sprite;
 
for (var i:uint = 0; i < 5 ; i++)
{
	clip = new Sprite( );
	clip.x = 10 * i;
	clips[i] = clip; //эту строчку можно заменить на clips.push(clip);
}
 
trace(clips[3].x);
__________________
скриптограф

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

Регистрация: Mar 2009
Адрес: Екатеринбург
Сообщений: 30
Отправить сообщение для Maraekb с помощью ICQ
Огромное Спасибо!!!

Старый 19.05.2010, 19:11
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 6  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
Цитата:
Этот подход из этой же серии, но другой и тоже плох:
Только при условии динамичности класса.

getChildAt до кучи.

Старый 11.07.2010, 22:36
artics вне форума Посмотреть профиль Отправить личное сообщение для artics Найти все сообщения от artics
  № 7  
Ответить с цитированием
artics

Регистрация: Nov 2007
Адрес: UKRAINE
Сообщений: 32
Отправить сообщение для artics с помощью ICQ
а у меня проблемка с детьми: есть клас game, который определен основным и клас drop . Я хотел чтоб в класе game создался масив drop, но когда я пробую сделать вышеуказаными методами, во всех случяях одинаковый ерор

Цитата:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at drop()
at game()

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

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

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


 


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


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