Wie Sie access-Objekt definiert, mit dem Elternteil von Kind Schieberegler movieclip
Hier ist meine app-Struktur:
Eltern->[regler->[movieClip1,movieClip2,movieClip3]]
Also ich haben im Grunde ein paar movieclips innerhalb einer Slider-Komponente.
Jetzt habe ich ein Objekt definiert in der übergeordneten Zeitlinie
var myObj:Object = new Object();...
Ich für den Zugriff auf dieses Objekt von movieClip1 in der Slider-Komponente.
Ich habe versucht:
trace(MovieClip(this.parent).myObj.A_function_in_the_object());
Welche Ausgänge:
TypeError: Error #1034: Typumwandlung fehlgeschlagen: kann nicht konvertiert werden
fl.controls::BaseButton@222082e1 zu flash.display.MovieClip. bei
SliderTrack_skin/frame1()
Und
trace(parent.myObj.A_function_in_the_object());
Welche Ausgänge:
1119: Zugriff möglicherweise nicht definierte Eigenschaft myObj durch einen Verweis
mit statischem Typ flash.display:DisplayObjectContainer.
Wie erhalte ich Zugriff auf das Objekt, das definiert, in der übergeordneten Zeitleiste aus einer untergeordneten movieclip?
InformationsquelleAutor user2981 | 2012-10-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Weil die Struktur von flash-Komponenten sind Komplex, das.Eltern nicht immer wieder die Klasse, die Sie erwartet. Also, wenn Sie wollen, um Zugriff auf parent-Objekt verwenden, sollten Sie das while-Schleife statt".Eltern.Eltern.Eltern ... ".
Wie diese.
InformationsquelleAutor Yasuyuki Uno
MovieClip(this.parent)
istslider
nicht dieparent
. Sie können den Zugriff auf die übergeordnete Zeitleiste vonMovieClip(this.parent.parent)
. Wenn Sie möchten, um Zugriff auf diemyObj
dannMovieClip(this.parent.parent).myObj
Sie können auch den Zugriff auf die Eigenschaft in dermyObj
durchMovieClip(this.parent.parent).myObj.propertyA
. In diesem FallA_function_in_the_object
ist die Eigenschaft vonmyObj
.Darf ich wissen, den Rahmen der
myObj
undmovieClip1
definiert haben?InformationsquelleAutor Moorthy