Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   передача параметра функции, при нажатии на мувик (http://www.flasher.ru/forum/showthread.php?t=88689)

Dorin123 28.11.2006 18:33

передача параметра функции, при нажатии на мувик
 
Здравствуйте!
Как правильно передать параметр из
Код:

onpress=function(){}
в другую функцию?

пишу:
Код:

for (var i=0; i<=30; i++){//цикл
for (var j=0; j<=30; j++){//цикл
_root._setka["b" + i + "y" +j].onPress=Presscode(this._name);
 }//цикл
}//цикл

дальше:
Код:

public function Presscode(perem){
                _root.jora.text=perem;
        }

оно почему то не ждет пока я нажму на кнопку, а сразу выводит значение perem;

а вообще как можно

Код:

-//-.onPress=function(){
zed=this._name;
};

значение переменной zed передать в другую функцию?
помогите плизз.

KidsKilla 28.11.2006 18:36

Код:

for (var i=0; i<=30; i++){//цикл
for (var j=0; j<=30; j++){//цикл
_root._setka["b" + i + "y" +j].onPress=function(){Presscode(this._name);}
 }//цикл
}//цикл


Dorin123 28.11.2006 18:50

не хочет оно вызывать вообще никакие функции изнутри
Код:

onPress=function(){ отсюда ничего не вызывает :( }

artcraft 28.11.2006 19:07

надо копать в сторону mx.utils.Delegate

Dorin123 28.11.2006 19:12

спасибо :) буду копать =)

iNils 28.11.2006 19:12

Цитата:

Сообщение от artcraft
надо копать в сторону mx.utils.Delegate

Только он не передает параметры. Вчера кстати под один проект подправил
Код:

class ru.inils.Delegate extends Object {
        static function create (obj:Object, func:Function, arg:Array):Function {
                var f = function () {
                        var target = arguments.callee.target;
                        var func = arguments.callee.func;
                        var arg = arguments.callee.arg;
                        return func.apply (target, arg);
                };
                f.target = obj;
                f.func = func;
                f.arg = arg;
                return f;
        }
}


artcraft 28.11.2006 19:40

класс, шикарно

etc 28.11.2006 19:40

Ага, вот Proxy:
Код:

class ascb.util.Proxy {

  public static function create(oTarget:Object, fFunction:Function):Function {

    var aParameters:Array = new Array();
    for(var i:Number = 2; i < arguments.length; i++) {
      aParameters[i - 2] = arguments[i];
    }

    var fProxy:Function = function():Void {
      var aActualParameters:Array = arguments.concat(aParameters);
      fFunction.apply(oTarget, aActualParameters);
    };

    return fProxy;

  }

}

Суть та же, после первых двух аргументов передаются остальные :)

artcraft 28.11.2006 19:43

всего 2 строки дописал, а сколько пользы :~)

artcraft 28.11.2006 19:47

__etc, тоже куул


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

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