Bonjour,
J'ai un petit problème de visibilité de variable dans une class.
J'ai donc une class Diaporama dans laquelle j'ai une fonction AllerADroite() qui me permet de faire défiler mes diapositives.
Voici donc la partie du code qui nous interresse:

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
 
class Diaporama{
	var Suivant: MovieClip;
 
	function AllerADroite(){
		trace('AllerADroite ');
	}
	//------------------------------------------	
	function SuivantPress() {
		//! On entre dans une fonction qui n'est pas considéré comme faisant partie 
		// de l'ojbet diapo donc qui ne connait pas les autre fonction
		trace('Suivant '+Suivant); // --> Affiche undefined 
		trace(AllerADroite); //--> Affiche undefined 
		AllerADroite(); //qui n'est donc pas appelé
		trace('typeof(this)  '+typeof(this)); //--> Affiche MovieClip
		trace('this '+(MovieClip(this))._parent); //Sans cast this ne connait pas _parent !
	};
	//------------------------------------------------------
	function AffecteEvenements(){
		Suivant.Fleche.onPress =  SuivantPress;
	}
}
 
//// Dans mon fichier .fla
var diapo : Diaporama = new Diaporama;
diapo.Suivant = ClipSuivant; //CLipSuivant est posé sur la scene à la conception
diapo.AffecteEvenements();
Le problème, comme marqué dans les commentaires, est que dans SuivantPress on ne voit ni les variables ni les fonctions de la class Diaporama.
Et comme j'ai plusieurs instance du Diaporama sur la scene je crois qu'on peut oublier les variables static.
Si quelqu'un sait pourquoi, ou sait comment contourner le problème ...
Merci