![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
function createDelegate (obj:Object, func:Function, arg:Array):Function {
var f = function () {
var target:Object = arguments.callee.target;
var func:Function = arguments.callee.func;
var arg:Array = arguments.callee.arg;
return func.apply (target, arg);
};
f.target = obj;
f.func = func;
f.arg = arg;
return f;
}
mc.onPress = createDelegate (this, func, arg);
var target:Object = this;
mc.onPress = function () {func.apply(target, arg);}
вспомогатеьная функция вызов прикрепляемой функции
__________________
Хороший отдых - половина работы. |
|
|||||
|
Эхх... жаль кое-чего в AS 3 нету
|
|
|||||
|
Цитата:
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
artcraft, в Proxy нету ничего вспомогательного. Дело не в краткости кода.
Дело в инкапсуляции — ты написал одну строку и всё, не забивая себе голову лишними рассуждениями на тему области видимости и как её не потерять. Более того, это более правильно с точки зрения ООП — метод должен обрабатываться в конкретном экземпляре класса, а не обрабатываться где-то в его потомках. Попробуй написать такую конструкцию в FDT — повергнешь его в шок. |
|
|||||
|
Регистрация: Nov 2006
Сообщений: 16
|
огромное всем спасибо
проблема решена. |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:23. |
|
|
« Предыдущая тема | Следующая тема » |
|
|