Accès aux propriétés / méthodes parent dans Actionscript 3.0
-
06-07-2019 - |
Question
J'essaie de contrôler le scénario principal de mon application flash à partir d'un MovieClip qui est un enfant de la scène principale. Apparemment, dans ActionScript 2, vous pourriez le faire en utilisant _root, mais en utilisant root (puisque _root n'existe plus), une erreur est générée:
root.play();
"1061: Un appel à une méthode éventuellement non définie lit une référence de type statique flash.display: DisplayObjectContainer."
L'utilisation de la classe Stage ne fonctionne pas non plus:
stage.play();
"1061: L'appel d'une méthode, éventuellement non définie, est lu par une référence de type statique flash.display: Stage."
Y a-t-il un moyen de le faire?
La solution
Vous devez le convertir en MovieClip
(root as MovieClip).play()
Autres conseils
essayez quelque chose comme
& nbsp; & nbsp; & nbsp; & nbsp; MovieClip (racine) .gotoAndPlay ("menu");
Bonne chance,
Randy Stegbauer
Vous pouvez également séparer votre code de MovieClip en une classe séparée lors de la définition de la classe de document pour votre fla principal.
Supposons que la classe de document de votre fla principal est Main.as et que le fichier de classe de votre MovieClip est Movie.as, vous pouvez ajouter le pointeur de la classe Main en tant que paramètre dans le constructeur de la classe Movie
Dans Main.as
public class Main () {
var m = nouveau film (this);
}
Dans Movie.as
public class Movie(m:Main) { m.gotoAndPlay("somewhere"); }