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

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

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

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
что если нужно в коллбэк функцию передать какой-нибудь параметр? как быть?
приходит на ум только такая конструкция:
Код AS3:
public function onMouseUpOnPoint(event:MouseEvent = null) {
     var parametr1:Number = 12354;  //параметр который нужно передать в функцию в этом классе.
            function funcCallBack(e:Event){
	                func1(parametr1);
            }
// здесь начинается загрузка XML и по onComplete вызывается коллбэк функция
	this.loaderXml.loadData(funcCallBack,param1,param2);
}
не костыль ли это?


Последний раз редактировалось Isfet; 21.10.2012 в 18:45.
Старый 21.10.2012, 19:48
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 12  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Если вам нужен коллбэк с параметром, то вам нужна функция-обвертка для коллбэка - ведь функция может вернуть ссылку на новую функцию с параметром в замыкании.

Добавлено через 9 минут
Код AS3:
var a:Function = function(value:int=0):void {
			trace(value);
			}
 
		function make_func_with_param(original_function:Function,param:int):Function {
		return function():void {
		original_function(param);	
			}		
		}
		var b:Function = make_func_with_param(a, 2);
		var c:Function = make_func_with_param(a, 11);
		b();	
		c();


Последний раз редактировалось Krusty; 21.10.2012 в 20:09.
Старый 21.10.2012, 19:59
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 13  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
а Function#apply() и Function#call() уже не в моде чтоли?
Или я чего-то недопонял?

п.с. я бы лучше это через событие организовал

Старый 21.10.2012, 20:00
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 14  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Шаблон же.
caseyryan, а как вы будете биндить аргументы для функции сравнения, которая ждет 2 аргумента, а не произвольное количество?

Старый 21.10.2012, 20:15
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 15  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
Цитата:
Сообщение от caseyryan Посмотреть сообщение
п.с. я бы лучше это через событие организовал
написать кастомный эвент, и в него передавать параметр?

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

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

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


 


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


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