• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-09-2010, 11:38   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2010
Beiträge: 21
Mc1 in Mc2laden und über Mc2 ansprechen

Ich hab mir ein kleines Menue zusammengestellt indem ich auf ein klassenpackage zugreife und die Mcs als Button über Addchild auf die Bühne lade.
Im nächsten Schritt will ich diese Buttons auf eine Leiste laden ebenfalls ein Movieclip.

Das reinladen über addchild klappt zwar, allerdings möchte ich gerne dass sich die Buttons mit der Leiste bewegen wenn ich die Leiste animiere.

Als Beispiel für mich selber:
PHP-Code:
var leiste:MovieClip = new Leiste
Object
(this).ja.addChild(leiste
Der MC wird wie gesagt geladen spreche ich jetzt aber "ja" an und will dieses animieren bleibt die leiste weiterhin stehen.

Gibt es eine Möglichkeit Mcs so in einen Mc zu laden, dass diese dann komplett mit dem parrentMc bewegt werden?

Oder führt kein weg daran vorbei jedem einfach den gleichen bewegungscode zu geben. (was den code unnötig länger machen würde)


Lg Ex
exidus ist offline   Mit Zitat antworten
Alt 01-09-2010, 11:51   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 5.626
Also Dein Code kann so nicht funktionieren, weil die Klammern bei der Instanziierung fehlen. So wäre es richtig:
PHP-Code:
var leiste:MovieClip = new Leiste(); 
Natürlich bewegst Du alle Unterobjekte eines DisplayObjects mit, wenn Du dieses bewegst.
Kann es sein, dass Du den Befehl addChild einfach falschrum einsetzt?! Um einen Button Deiner Leiste hinzuzufügen müßte Dein Code jedenfalls so aussehen:
PHP-Code:
leiste.addChild(button1); //usw... 
Instanzen auf Object zu casten, um beliebige Eigenschaften aufrufen zu können, ist übrigens nicht so das Gelbe vom Ei. Da solltest Du besser direkt mit den richtigen Datentypen arbeiten (z.B. MovieClip oder eben die zugehörige Klasse).
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (01-09-2010 um 11:55 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 01-09-2010, 12:51   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2010
Beiträge: 21
ne das ist ein neues fladokument wo ich noch keine buttons habe und darum hab ich als platzhalter mal die Leiste als "button-ersatz" genommen um zu schaun ob es so funktioniert wie ich es mir dachte.

du hattest recht es lag an den klammern, allerdings wurde der Clip dennoch geladen nur ansprechen konnte ich Ihn nicht. Lag wohl daran dass das objekt um mir 2 Zeilen code zu sparen im Platzhalter bereits auf der Bühne war in Frame1.

Habe jetzt die Buttons selber nochmal damit bestückt und jedem button einen kurzen movecode zugeordnet und es klappt alles wie ich es will

Ich experimentier damit jetzt weiter rum um mir da die Möglichkeiten einzuprägen, vielen Dank

PS:
Zitat:
Instanzen auf Object zu casten, um beliebige Eigenschaften aufrufen zu können, ist übrigens nicht so das Gelbe vom Ei. Da solltest Du besser direkt mit den richtigen Datentypen arbeiten (z.B. MovieClip oder eben die zugehörige Klasse).
biste so lieb und erklärst mir etwas genauer was du damit meinst, dass ich mich da im lernprozess nicht in etwas verheddere was ich später dann abgewöhnen muss.
Thx für deine Anteilnahme, das hilft mir hier echt dicke weiter mich in die Materie einzuarbeiten

Geändert von exidus (01-09-2010 um 12:53 Uhr)
exidus ist offline   Mit Zitat antworten
Alt 01-09-2010, 14:01   #4 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 5.626
Als "casten" bezeichnet man es, wenn man eine Objekt von unbekannten oder zu weit gefassten Datentyp dediziert als Instanz einer bestimmten Klasse behandelt, um dann auf deren Instanzeigenschalten zugreifen zu können:
PHP-Code:
var ob:Sprite = new MovieClip();

ob.play(); // Erzeugt einen Compilerfehler, weil Sprite nicht diese Funktion hat

MovieClip(ob).play(); // Funktioniert, weil "ob" wieder als MovieClip behandelt wird 
Hier hast Du also this auf Object gecastet (Wo hast Du diesen Kniff überhaupt her?):
PHP-Code:
Object(this
Das geht natürlich, weil Object die Basisklasse von so ziemlich allem ist. Allerdings ist Object auch dynamic. D.h. Du kannst in einer Object-Instanz theoretisch jede Eigenschaft erzeugen (wie es z.B. in AS2 der Fall ist). Leider hebelst Du dadurch aber auch die Typsicherheit und Fehlersuche von AS3 aus, was dann irgendwann zu Problemen führen dürfte.
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (01-09-2010 um 14:02 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
über AS Ebenen ansprechen hasenbein ActionScript 2 9 11-02-2010 17:12
Komponenten über AS 2.0 ansprechen Prof. Xorron Komponenten und SmartClips 3 21-04-2004 15:15
mc über variable ansprechen ... mort3n Flash MX 12 25-02-2004 00:37
MC über die Tiefe ansprechen Da_Judge ActionScript 1 2 08-01-2004 18:01
mcs über function ansprechen ? Tschdaeff Flash MX 3 16-12-2002 14:05


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:06 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele