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

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

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

блогер
Регистрация: Sep 2010
Сообщений: 82
Записей в блоге: 2
По умолчанию Удаление слушателя для функции с параметром

Здравствуйте.
Пишу код, в котором необходимо, чтобы при клике на объект передавался параметр
Код AS3:
rblock.addEventListener(MouseEvent.MOUSE_OVER, onrOver(i));
 
private function onrOver(i:uint) {
	return function(e:MouseEvent):void {
		//...
	}
}
со временем rblock удаляется. Но никак не могу поймать слушатель на него
Код AS3:
rblock.removeEventListener(MouseEvent.MOUSE_OVER, onrOver(i));
- не работает
Код AS3:
rblock.removeEventListener(MouseEvent.MOUSE_OVER, onrOver);
- аналогично
Подскажите, есть ли выход из ситуации? Как вариант, можно ли удалить вообще все слушатели объекта при его удалении?

Старый 15.12.2010, 14:55
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
http://www.flasher.ru/forum/blog.php?b=239

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

блогер
Регистрация: Sep 2010
Сообщений: 82
Записей в блоге: 2
Спасибо, исчерпывающе

Старый 15.12.2010, 21:13
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 4  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Но в данном случае вроде все просто:
Код AS3:
var listener:Function = onrOver(i);
rblock.addEventListener(MouseEvent.MOUSE_OVER, listener);
rblock.removeEventListener(MouseEvent.MOUSE_OVER, listener);

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

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

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


 


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


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