OVH Cloud OVH Cloud

Probl?me de ciblage dans une classe

3 réponses
Avatar
EricAndCo
Salut ? tous,

Je d?bute en flash (MX pro 2004) et j'ai ?crit une classe toute simple pour
illustrer mon probl?me :

class MaClasse {
private var filePath:String;
private var xmlDoc:XML;

function MaClasse(chemin:String) {
filePath = chemin;
xmlDoc = new XML();
xmlDoc.ignoreWhite = true;
xmlDoc.onLoad = function() {
trace("fichier charg?");
trace(filePath); // Ne fonctionne pas
}
xmlDoc.load(filePath);
}
}

Je voudrais pouvoir rappeler des propri?t?s (priv?es mais dynamiques) de ma
classe depuis la fonction sur ?v?nement "onLoad". Dans ce contexte (la fonction
onLoad) "this" d?signe "xmlDoc" mais "_parent" est "und?fined".

Comment cibler les propri?t?s de ma classe dans ce contexte ?

Merci d'avance pour votre aide.

3 réponses

Avatar
E-stampida
c'est un peu vague, quel message d'erreur as-tu ?
as-tu essayé un trace(chemin) ? quel est le message d'erreur ?
Parce qu'à priori, je ne vois pas d'erreur de syntaxe.

"EricAndCo" wrote in message
news:d1p8fb$9v1$
Salut ? tous,

Je d?bute en flash (MX pro 2004) et j'ai ?crit une classe toute simple
pour
illustrer mon probl?me :

class MaClasse {
private var filePath:String;
private var xmlDoc:XML;

function MaClasse(chemin:String) {
filePath = chemin;
xmlDoc = new XML();
xmlDoc.ignoreWhite = true;
xmlDoc.onLoad = function() {
trace("fichier charg?");
trace(filePath); // Ne fonctionne pas
}
xmlDoc.load(filePath);
}
}

Je voudrais pouvoir rappeler des propri?t?s (priv?es mais dynamiques) de
ma
classe depuis la fonction sur ?v?nement "onLoad". Dans ce contexte (la
fonction
onLoad) "this" d?signe "xmlDoc" mais "_parent" est "und?fined".

Comment cibler les propri?t?s de ma classe dans ce contexte ?

Merci d'avance pour votre aide.



Avatar
E-stampida
J'ai recopié ton code, j'ai testé avec une valeur "test", le trace m'a bien
donné "test", donc ça fonctionne...
Avatar
E-stampida
pour info, vérifie :
1) que ton fichier .as externe est exactement nommé comme ta classe
(MaClasse.as)
2) que tu importes ta classe correctement :
import MaClasse.as;
var path1:MaClasse = new MaClasse("test");