IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

Comment déclarer un onrelease sur une série d'images chargées dans une boucle


Sujet :

Flash

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Points : 146
    Points
    146
    Par défaut Comment déclarer un onrelease sur une série d'images chargées dans une boucle
    Bonjour, je charge mes images dans la page à partir d'une boucle, et je voudrais faire en sorte que lorsqu'elles sont chargées, on puisse effectuer une action de onrelease dessus en fonction de l'indice associé à l'image au chargement. Le code qui suit ne fonctionne pas, mes images ne détectant pas le release. Quelqu'un voit d'où ça peut venir ? Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    var totalImage:Number = 35;
    var positionImage:Array = [
    	{x:241, y:11}, // P01
    	...
    	{x:381, y:1204}
    ];
     
    function load(aIndex:Number) {
    	var tmp:MovieClip = this.createEmptyMovieClip("conteneur_"+aIndex, this.getNextHighestDepth());
    	tmp._x = positionImage[aIndex].x;
    	tmp._y = positionImage[aIndex].y;
     
    	var listener:Object = new Object();
    	listener.onLoadInit = initialisation;
     
    	var mcl:MovieClipLoader = new MovieClipLoader();
    	mcl.addListener(listener);
    	var fileName:String = "images/img_"+("00").substr(0, 2-aIndex.toString().length)+aIndex+".jpg";
    	mcl.loadClip(fileName, tmp);
    }
     
    function initialisation(aTarget:MovieClip) {
    	var currentIndex:Number = Number(aTarget._name.split("_")[1]);
    	if (currentIndex+1<totalImage) {
    		load(currentIndex+1)
    	}
    	aTarget._width = aTarget._height = 48;
    	var clip = _level0.Scroller.Scrolling_Page["conteneur_"+currentIndex];
    	clip.indice = currentIndex;
    }
     
    load(0);
     
    clip.onRelease = function() {
    	trace(clip.indice)
    }

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Points : 146
    Points
    146
    Par défaut
    OK j'ai trouvé, en fait il suffisait de placer le onRelease dans initialisation. Par contre, le test sur ma scène fonctionne, le chemin _root.Scroller.Scrolling_Page["conteneur_"+currentIndex] est valide, mais cette scène est une page qui se charge à partir d'une autre, donc dans ce cas là le _root fait référence à l'autre page je suppose, puisque ça ne fonctionne plus ! Faut-il que je change le chemin ou c'est impossible que c'est ça fonctionne comme ça ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/05/2014, 11h23
  2. Réponses: 1
    Dernier message: 29/08/2011, 16h45
  3. Réponses: 8
    Dernier message: 30/01/2009, 16h32
  4. créer une série de chiffre aléatoire dans une plage donnée, sans doublon
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 4
    Dernier message: 02/07/2008, 11h02
  5. Réponses: 2
    Dernier message: 20/06/2006, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo