Rheinwerk Design < openbook > Rheinwerk Design - Know-how für Kreative.
Know-how für Kreative

 << zurück
ActionScript 1 und 2 von Sascha Wolter (http://www.saschawolter.de/)
Objektorientierung und Codedesign mit Flash MX 2004
Buch: ActionScript 1 und 2

ActionScript 1 und 2
672 S., mit CD, Referenzkarte, 44,90 Euro
Rheinwerk Design
ISBN 3-89842-221-6
gp Kapitel 13 Objekterstellung
  gp 13.1 Artenvielfalt
    gp 13.1.1 Programmiermodelle
  gp 13.2 Philosophie
  gp 13.3 Blackbox
  gp 13.4 Klassen
  gp 13.5 Objekte
  gp 13.6 Selbst definierte Objekte


Rheinwerk Design - Zum Seitenanfang

13.5 Objekte  toptop

Bei Ihren ersten Schritten in die objektorientierte Welt benötigen Sie unter anderem das Handwerkszeug, sich diese Welt zu erschaffen. Denn von alleine besitzt Flash nur eine recht übersichtliche Menge an Objekten.

Abbildung
Hier klicken, um das Bild zu Vergrößern

Abbildung 13.5   Movieclip-Instanzen auf der Bühne (hier bei der Macintosh-Version von Flash MX)

Movieclips erzeugen

Zu den bekannten Objekten gehören die bereits erwähnten Movieclips. Eine Welt aus Movieclips erzeugen Sie, indem Sie Movieclip-Instanzen in Ihrem Film auf der Bühne platzieren. Diese »Geburt« einer Instanz kann auf verschiedene Arten erfolgen. Bereits in der Entwicklungsumgebung dürfen Sie

gp  das Symbol mit gedrückter Maustaste von der Bibliothek auf die Bühne ziehen
gp  oder eine bereits vorhandene Instanz duplizieren.
Bezeichner

In beiden Fällen erhalten die Movieclip-Instanzen zur Laufzeit automatisch einen Bezeichner in der Form »instance1«, »instance2« usw. – außer wenn Sie direkt im Eigenschaften-Inspektor innerhalb des Feldes Instanzname einen eigenen Bezeichner eintragen. Dieser Bezeichner ist eine Art Platzhalter für die Instanz – sozusagen ihr Name!

Instanz erzeugen

ActionScript_bietet_ebenfalls_verschiedene_Wege,_um_eine_Instanz_zu_erzeugen:

gp  Verwenden Sie zur Laufzeit den Befehl attachMovie, falls das Movieclip-Symbol verknüpft ist (diese Verknüpfung legen Sie in der Bibliothek fest).
gp  Klonen Sie bereits exisierende Instanzen zur Laufzeit durch den Befehl duplicateMovieClip.
gp  Setzen Sie den erst mit Flash MX eingeführten Befehl createEmptyMovieClip ein, um eine leere Instanz der Movieclip-Klasse zu erzeugen.

Abbildung
Hier klicken, um das Bild zu Vergrößern

Abbildung 13.6   ActionScript zur Erzeugung von Instanzen (hier bei der Macintosh-Version von Flash MX)

// Erzeuge Freundin
movieclip.fla
_root.attachMovie("freundin", "meineFreundin", 1);
meineFreundin._x=175;
meineFreundin._y=275;
meineFreundin._rotation=-45;
// Klone Freundin
meineFreundin.duplicateMovieClip("deineFreundin", 2);
deineFreundin._x=275;
deineFreundin._y=250;
Globale Objekte

Neben den für Nichtprogrammierer zugänglichen Movieclips verfügt ActionScript über eine Reihe globaler Objekte, die fein säuberlich sortiert im ActionScript-Editor aufgelistet sind. Dazu zählen unter anderem

gp  das Math-Objekt (für mathematische Operationen),
gp  das Stage-Objekt (Eigenschaften und Fähigkeiten der Bühne) und
gp  das Mouse-Objekt (Fähigkeiten des Mauszeigers).

Diese Objekte existieren bereits und müssen somit auch nicht extra erzeugt werden. Da es sich außerdem um globale Objekte handelt, reicht die Angabe des Namens, um auf sie zuzugreifen. Das folgende Beispiel verwendet einen Movieclip als Mauszeiger und dreht diesen selbst definierten Mauszeiger immer zur Bühnenmitte:

// Zeige Bühne immer in 100 Prozent an
Stage.scaleMode = "noScale";
// Reduziere das Kontextmenü
Stage.showMenu = false;
// Verstecke Mauszeiger
Mouse.hide();
mcMonster.onEnterFrame=function () {
   // Setze Objekt auf die Mausposition
   this._x=_root._xmouse;
   this._y=_root._ymouse;
   // Drehe Objekt bzgl. Punkt (225, 200)
   var grad=Math.atan2(200-this._y, 225-this._x)/Math.PI*180;
   this._rotation=grad;
}

Die globalen Objekte zeichnen sich dadurch aus, dass es immer nur ein Vorkommen von ihnen gibt. Dies macht auch Sinn, da ohnehin nur ein Satz an mathematischen Funktionen, eine Bühne und genau ein Mauszeiger existieren.

Klassen für Objekte

Daneben bietet ActionScript aber ganze Klassen für Objekte. Ein Beispiel haben Sie mit den Movieclips bereits kennen gelernt. Weitere sind zum Beispiel Sound (für die Klangsteuerung), Color (für die Farbsteuerung) und Array (Listen und Felder zur Verwaltung von Werten). Das folgende Skript erzeugt mit Hilfe des new-Operators eine Sound-Instanz und lädt anschließend eine MP3-Datei. Die Verwendung von Methoden und Eigenschaften gestaltet sich dabei ganz ähnlich zu Movieclips:

meinSound=new Sound();
sound.fla
meinSound.loadSound("http://www.meinserver.de/meinsound.mp3", true);
Die Instanz ist nicht sichtbar

Für eher grafisch orientierte Entwickler ist es häufig gewöhnungsbedürftig, dass sie eine Instanz, die kein Movieclip ist, nicht in ihrem Projekt sehen. Trotzdem ist diese Instanz aber da, auch wenn sie nur im Arbeitsspeicher und nicht auf dem Bildschirm existiert. Wenn es Ihnen hilft, dann stellen Sie sich eine Instanz wie einen leeren Movieclip vor.

 << zurück
  
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: ActionScript 1 und 2
ActionScript 1 und 2
bestellen
 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchtipps
Zum Rheinwerk-Shop: JavaScript






 JavaScript


Zum Rheinwerk-Shop: jQuery






 jQuery


Zum Rheinwerk-Shop: Responsive Webdesign






 Responsive Webdesign


Zum Rheinwerk-Shop: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


Zum Rheinwerk-Shop: Schrödinger lernt HTML5, CSS3 und JavaScript






 Schrödinger lernt
 HTML5, CSS3
 und JavaScript


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2005
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern