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

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

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

Регистрация: Apr 2010
Сообщений: 147
in4core, вот это в милион раз понятнее

Старый 03.09.2010, 23:30
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 32  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от -De- Посмотреть сообщение
Опять вопрос из серии "как передать парамер в слушатель" - ищите по форуму. Регулярно всплывает. Интересно, будет ли толк, если статью написать...
Да, будет. Можно даже в FAQ перенести. Много вопросов по этому поводу.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 04.09.2010, 02:38
angry_beaver вне форума Посмотреть профиль Отправить личное сообщение для angry_beaver Найти все сообщения от angry_beaver
  № 33  
Ответить с цитированием
angry_beaver

Регистрация: Sep 2010
Сообщений: 6
Цитата:
Сообщение от in4core Посмотреть сообщение
Код AS3:
function initButtons(arr:Array):void {
 
			for(var i:int = 0; i<arr.length; i++){
				arr[i].id = i;
				arr[i].addEventListener(MouseEvent.CLICK, doClick);		
			}
		}
		function playOver(e:MouseEvent):void {
 
			 trace(e.currentTarget.id);
			}
		}
}
вот и передали параметр . в чем трабла то?
параметр то передали, а как передать весь массив?

Старый 04.09.2010, 02:52
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 34  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
Создать ссылку на массив не пробовали? В особо извращенном случае, можно создать словарь, в котором ключами будут кнопки, а значениями – массивы. (на правах субботы, тему читал поверхностно)

Код AS3:
private function cbuttonClickHandler(event:MouseEvent):void {
   var btn:MyButton = event.currentTarget as MyButton;
   if(_buttonsDict[btn] != null) {
      // do something with button
   }else {
      trace('trace something');
      return;
   }
}
__________________
#flasher@irc.trg.ru:6667


Последний раз редактировалось Obi; 04.09.2010 в 03:00.
Старый 04.09.2010, 10:02
Zik. вне форума Посмотреть профиль Отправить личное сообщение для Zik. Найти все сообщения от Zik.
  № 35  
Ответить с цитированием
Zik.
 
Аватар для Zik.

Регистрация: Nov 2007
Сообщений: 1,724
Цитата:
Сообщение от in4core Посмотреть сообщение
Код AS3:
function initButtons(arr:Array):void {
 
			for(var i:int = 0; i<arr.length; i++){
				arr[i].id = i;
				arr[i].addEventListener(MouseEvent.CLICK, doClick);		
			}
		}
		function playOver(e:MouseEvent):void {
 
			 trace(e.currentTarget.id);
			}
		}
}
вот и передали параметр . в чем трабла то?
Трабла в том, что объект должен быть динамичным, то есть использовать либо MovieClip, либо свой собственный класс, в котором объявлен id. Если же у человека Sprite или SimpleButton, то такое решение недопустимо

Старый 04.09.2010, 10:54
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 36  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
А в чем проблема с расширить класс?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Цитата:
Сообщение от iNils Посмотреть сообщение
А в чем проблема с расширить класс?
Ради одного id`а расширять нежелательно. Это создание лишней сущности, лучше использовать коллекции.

Старый 04.09.2010, 12:55
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 38  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Кто сказал что она лишняя?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Она будет лишней если этот параметр будет использоваться только в этом классе и он единично-простой. Я считаю нормальным занаследоваться если нужно тащить за собой 5-6 переменных. Но в случае, когда по клику надо просто передать id - Dictionary это самый лучший вариант.

Старый 04.09.2010, 13:06
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 40  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Цитата:
Я считаю нормальным занаследоваться если нужно тащить за собой 5-6 переменных
Считай.
Если посмотреть на название метода - initButtons, то, если автор не совсем ленивый, был создан класс описывающий свои кнопки и добавить туда id проблемы нет.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Теги
array , EventListener , массив , получить , слушатель

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

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


 


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


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