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

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

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

Регистрация: Sep 2010
Сообщений: 36
По умолчанию Как "вмешаться" в название переменной?

Здравствуйте. На сцене лежить 10 мувиков с названиями circle_0, circle_1, circle_2, circle_3, circle_4 и т.д. Надо в цикле сделать чтото со всеми мувиками. Как мне подстовлять переменную i в таком коде:
Код AS3:
for(var i:uint = 0; i < this.circles.numChildren; i++) {
	this.circles.circle_1.x = 10;
}
Как бы хочу написать circle_i.

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

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Если в контейнере только ваши circle, то можно так:
Код AS3:
for(var i:uint = 0; i < this.circles.numChildren; i++) {
  var circle:DisplayObject = this.circles.getChildAt(i);
  circle.x = 10;
}
А ещё лучше занести в массив все circle:
Код AS3:
var circlesArray:Array = [circle_0, circle_1, circle_2, circle_3, circle_4];
for(var i:uint = 0; i < circlesArray.length; i++) {
  var circle:DisplayObject = circlesArray[i];
  circle.x = 10;
}
Есть ещё один колхозный метод:
Код AS3:
for(var i:uint = 0; i < this.circles.numChildren; i++) {
  var circle:DisplayObject = this.circles.getChildByName("circle_" + i.toString());
  circle.x = 10;
}

Старый 11.06.2011, 19:32
hobbystudio вне форума Посмотреть профиль Отправить личное сообщение для hobbystudio Найти все сообщения от hobbystudio
  № 3  
Ответить с цитированием
hobbystudio

Регистрация: Sep 2010
Сообщений: 36
Bgg A чтото вроде нельзя?
Код AS3:
this.circles.['circle_' + i].x = 10

Старый 11.06.2011, 19:43
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Код AS3:
(this.circles['circle_' + i] as DisplayObject).x = 10
__________________
тут я

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
Код AS3:
(this.circles['circle_' + i] as DisplayObject).x = 10
У автора лежит 10 мувиков с instance name, а не 10 полей класса, ссылающимися на эти мувики.
"Колхозный" метод Bgg самый правильный.

Старый 11.06.2011, 22:04
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 6  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Так FlashIDE сам же генерирует соответствующие поля.
__________________
тут я

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

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

Старый 11.06.2011, 22:11
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 8  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Убедительно
__________________
тут я

Старый 12.06.2011, 02:28
hobbystudio вне форума Посмотреть профиль Отправить личное сообщение для hobbystudio Найти все сообщения от hobbystudio
  № 9  
Ответить с цитированием
hobbystudio

Регистрация: Sep 2010
Сообщений: 36
Всем спасибо. Воспользовался "колхозным методом" и все работает как надо. Тема закрыта.

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

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

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


 


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


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