Accesso alle proprietà / ai metodi principali in Actionscript 3.0
-
06-07-2019 - |
Domanda
Sto cercando di controllare la linea temporale principale della mia applicazione flash da un MovieClip che è figlio del palco principale. Apparentemente, in ActionScript 2, potresti farlo usando _root, ma l'uso di root (poiché _root non esiste più) ora genera un errore:
root.play();
" 1061: la chiamata a un metodo possibilmente non definito viene riprodotta attraverso un riferimento con tipo statico flash.display: DisplayObjectContainer. "
Anche l'uso della classe Stage non funziona:
stage.play();
" 1061: la chiamata a un metodo possibilmente non definito viene riprodotta attraverso un riferimento con tipo statico flash.display: Stage. "
C'è un modo per farlo?
Soluzione
Devi lanciarlo su un MovieClip
(root as MovieClip).play()
Altri suggerimenti
prova qualcosa come
& Nbsp; & nbsp; & nbsp; & nbsp; MovieClip (root) .gotoAndPlay (" menù ");
Buona fortuna,
Randy Stegbauer
Un altro modo è separare il codice del filmato in una classe separata mentre si imposta la classe del documento per il proprio fla.
Supponi che la classe di documenti del tuo fla principale sia Main.as e il file di classe del tuo Movie Clip sia Movie.as, puoi aggiungere il puntatore della classe Main come parametro nel costruttore della classe Movie
In Main.as
classe pubblica Main () {
var m = nuovo film (questo);
}
In Movie.as
public class Movie(m:Main) { m.gotoAndPlay("somewhere"); }