hello :)
je trouve ta technique super complexe :) A mon avis il y a moyen de faire
simple avec un objet comme le dit Zwetan au dessus.

PS : pour le delegate méfiance avec les méthodes de traits :

http://www.ekameleon.net/blog/index.php?post/2007/08/18/74-protection-sur-les-scopes-des-methodes-d-une-classe-en-as3

<http://www.ekameleon.net/blog/index.php?post/2007/08/18/74-protection-sur-les-scopes-des-methodes-d-une-classe-en-as3>EKA+
:)

2009/8/4 _ceone <[email protected]>

>
> peut-être une façon de faire ...
>
> [code]
> var mc:MovieClip;
>
> // une fonction constructrice de closure
> var closureFactory:Function = function( num:Number ):Function { return
> function(){ trace( this + " :: " + num ) ; } };
>
> // un delegate à l'ancienne AS2 style :)
> var delegate:Function = function( scope:Object,
> func:Function) :Function
> {
>        return function()
>        {
>                return func.apply( scope, arguments );
>        }
> }
>
> // soit un symbole de librairie nommé yop
> for(var i:Number=0, len:Number=10, ypos:Number=0; i<len; i++ )
> {
>        mc = new yop()
>        mc.name = "item_"+i;
>        mc.y = ypos;
>        ypos += mc.height + 5;
>        addChild( mc );
>        mc.addEventListener( flash.events.MouseEvent.CLICK, delegate( this,
> closureFactory( i ) ) );
> }
> [/code]
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de 
Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/FCNG?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à