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

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

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

Регистрация: Dec 2006
Адрес: Николаев
Сообщений: 78
Отправить сообщение для Skoder с помощью ICQ Отправить сообщение для Skoder с помощью Skype™
Post Связать объект и значение

Всем доброго времени суток. Помогите разобраться пожалуйста. Есть код:
Код AS3:
var array:Array = new Array(1, 2, 3, 4);
 
for (var i:int = 0; i < array.length; i++) {
  newSprite = new Sprite();
 
  newSprite.graphics.beginFill(0x000000);
  newSprite.graphics.drawCircle(0, 0, 10);
  newSprite.graphics.endFill();
 
  newSprite.x =  newSprite.width*i;
  addChild(newSprite);
 
  newSprite.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler)
}
Как связать array с newSprite?

во втором ActionScript делал так:
Код AS1/AS2:
newSprite.value = array[i];
и при наведении на newSprite писал:
Код AS1/AS2:
trace(this.value)
Заранее спасибо!
__________________
http://creativeinfinite.com Пишу на AS 4 =))

Старый 01.04.2010, 15:26
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
как вариант
Код AS3:
var array:Array = new Array(1, 2, 3, 4);
var map:Dictionary = new Dictionary();
for (var i:int = 0; i < array.length; i++) {
	var newSprite:Sprite = new Sprite();
	map[newSprite] = array[i];
 
	newSprite.graphics.beginFill(0x000000);
	newSprite.graphics.drawCircle(0, 0, 10);
	newSprite.graphics.endFill();
 
	newSprite.x =  newSprite.width*i;
	addChild(newSprite);
 
	newSprite.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler)
}
 
 
function rollOverHandler(event:Event):void 
{
	var id:*= map[event.currentTarget];
	trace( "id : " + id );
}

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

Регистрация: Dec 2006
Адрес: Николаев
Сообщений: 78
Отправить сообщение для Skoder с помощью ICQ Отправить сообщение для Skoder с помощью Skype™
silin, огромное спасибо
__________________
http://creativeinfinite.com Пишу на AS 4 =))

Старый 01.04.2010, 17:34
Art_133 вне форума Посмотреть профиль Отправить личное сообщение для Art_133 Посетить домашнюю страницу Art_133 Найти все сообщения от Art_133
  № 4  
Ответить с цитированием
Art_133
 
Аватар для Art_133

блогер
Регистрация: Feb 2007
Адрес: Москва
Сообщений: 538
Записей в блоге: 2
Отправить сообщение для Art_133 с помощью Skype™
Silin
А почему вы создали экземпляр Класса var Dictionary, а не просто ещё один Array или Object?

Старый 01.04.2010, 17:50
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 5  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
в массиве или объекте придется копаться, чтобы опредить индекс или еще какое соответствие с массивом данных.., хотя тоже можно

можно еще создавать не Sprite-ты, а его наследников, у которых определно свойство для данных и хранить данные или индекс в них самих,
можно и name Sprite-а какой-то идентификатор загнать, вариантов много..

в-общем, потому что *как вариант*, который мне больше по душе


Последний раз редактировалось silin; 01.04.2010 в 17:52.
Старый 01.04.2010, 19:37
Art_133 вне форума Посмотреть профиль Отправить личное сообщение для Art_133 Посетить домашнюю страницу Art_133 Найти все сообщения от Art_133
  № 6  
Ответить с цитированием
Art_133
 
Аватар для Art_133

блогер
Регистрация: Feb 2007
Адрес: Москва
Сообщений: 538
Записей в блоге: 2
Отправить сообщение для Art_133 с помощью Skype™
Ага, понят. Выходит Dictionary это что-то по типу "модного" Класса Array?

Старый 01.04.2010, 19:57
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 7  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>Выходит Dictionary это что-то по типу "модного" Класса Array?
не, не выходит ..
Dictionary - коллекция, ключами свойств которой, могут быть ссылки на объекты
в этом и удобство: имея ссылку на объект (тот же event.currentTarget) получаем нужное свойство
с Array (ключи - целые) или Object (ключи - строки) такое не проходит

Старый 02.04.2010, 12:36
Art_133 вне форума Посмотреть профиль Отправить личное сообщение для Art_133 Посетить домашнюю страницу Art_133 Найти все сообщения от Art_133
  № 8  
Ответить с цитированием
Art_133
 
Аватар для Art_133

блогер
Регистрация: Feb 2007
Адрес: Москва
Сообщений: 538
Записей в блоге: 2
Отправить сообщение для Art_133 с помощью Skype™
Это супер. Можно параметры для какого-нибудь Клипа, объекта забивать в Dictionaty и вытягивать простой ссылкой на объект, я правильно понял?

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

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

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


 


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


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