Know-how für Kreative

Inhaltsverzeichnis
1 Erste Schritte
2 Versionen
3 Einführung in die Programmierung
4 Die Entwicklungsumgebung
5 Regeln
6 Anweisungen und Aktionen
7 Werte und Datentypen
8 Ausdrücke und Operatoren
9 Funktionen
10 Kontrollstrukturen
11 Dokumenten-Objektmodell und Gültigkeitsbereich (Scope)
12 Ereignisse
13 Objekterstellung
14 Vererbung
15 Movieclips
16 ActionScript 2.0
17 Komponenten
18 Codedesign und Konzeption
19 Flashdetection
20 Aussergewoehnliche Benutzerfuehrung
21 D mit Flash
22 Macromedia Central
23 HTML
24 JavaScript, ActiveX und Java
25 Flash undokumentiert
26 Vergangenheit, Gegenwart und Zukunft
27 Kurzreferenz
28 Buchtipps
29 Links
30 Die CD-ROM zum Buch
Index
Download: - ZIP, ca. 9,8 MB
Buch bestellen
Ihre Meinung?
<< zurück | Galileo Design / <openbook> / ActionScript | vor >>
ActionScript 1 und 2 von Sascha Wolter (http://www.saschawolter.de/) Objektorientierung und Codedesign mit Flash MX 2004
ActionScript 1 und 2 672 S., mit CD, Referenzkarte, 44,90 Euro Galileo Design ISBN 3-89842-221-6 |
| Kapitel 9 Funktionen
|  | 9.1 Vordefinierte Funktionen
|  | 9.2 Selbst definierte Funktionen
|  |  | 9.2.1 Funktionen erstellen und verwenden
|  |  | 9.2.2 Funktion als Methode
|  |  | 9.2.3 Parameter übergeben
|  |  | 9.2.4 arguments-Array
|  |  | 9.2.5 Rückgabewerte
|  |  | 9.2.6 Anonyme Funktionen
|  |  | 9.2.7 Inline-Schreibweise
|  |  | 9.2.8 Funktionsobjekt
# Kapitel 9 Funktionen #### Von Grundrezepten und Brotbackmaschinen Funktionen übernehmen bei der Programmierung die Rolle eines Grundrezeptes, das für andere Aufgaben wieder verwendet werden kann und nicht jedes Mal wieder komplett angegeben werden muss. Eine Funktion ist somit ein Platzhalter für viele weitere Zeilen Code, auf die automatisch verwiesen wird. ##### Funktionen erkennen Sie an der nachfolgenden Klammerung. Funktionen sind wie Maschinen, die immer wiederkehrende Aufgaben automatisch abarbeiten. Und einige Funktionen erfordern sogar noch Parameter, welche die Produktion beeinflussen. Das ist wie mit einer Brotbackmaschine, die für das Erstellen eines Brotes eine ganze Reihe von Zutaten benötigt und am Ende ein fertiges Brot herausgibt. Aber nicht alle Funktionen müssen einen Wert als Ergebnis zurückgeben, meist machen sie aber Gebrauch von dieser Möglichkeit. Beispiele dafür sind die vergangenen Millisekunden seit Start der Anwendung getTimer() und die Versionsnummer des Flash Players:
    // Zeige die Versionsnummer des Flash Players im Ausgabefenster der Flash-Entwicklungsumgebung an!
    trace(getVersion());
##### Methoden Sollte eine Funktion nicht allgemein zur Verfügung stehen, sondern zu einem Objekt gehören, dann spricht man von einer Methode. Diese Unterscheidung entspricht dem Unterschied zwischen Variablen und den zu einem Objekt gehörenden Eigenschaften (siehe Seite 363):
    // Überprüfe, ob der Movieclip über dem Punkt (550, 400) liegt
    trace(this.hitTest(550, 400, true));
## 9.1 Vordefinierte Funktionen Flash bietet viele bereits vordefinierte Methoden und Funktionen, von denen Sie einige schon im Kapitel «Anweisungen und Aktionen« kennen gelernt haben. Denn die dort eingeführten Aktionen zählen ebenfalls zu den Funktionen. Und da diese Funktionen alle global zur Verfügung stehen, spricht man auch von Toplevel-Funktionen. ##### Toplevel-Funktionen und das globale Objekt Die bereits in Flash enthaltenen globalen Funktionen hat Macromedia im globalen Objekt abgelegt. Somit kann man auch bei diesen Toplevel-Funktionen von Methoden sprechen. Um genau zu sein, handelt es sich um Methoden des globalen Objektes. ##### Globale Funktionen Macromedia hat die meisten Funktionen zur besseren Übersicht innerhalb des ActionScript-Editors unter Globale Funktionen in die folgenden Kategorien unterteilt:
| Zeitleistensteuerung
| Browser/Netzwerk
| Movieclip-Steuerung
| Druckfunktionen
| Vermischte Funktionen
| Mathematische Funktionen
| Umwandlungsfunktionen
Einige wichtige Funktionen aus diesen Kategorien sind bereits in den zurückliegenden Kapiteln beschrieben worden. Und weitere wichtige Funktionen finden Sie im Folgenden zusammengefasst. Deshalb sind hier nur die Signaturen der am häufigsten benötigten Funktionen zum schnellen Nachschlagen angegeben. ##### Siehe Kapitel »ActionScript 2.0« ab Seite 396 Die Signaturen beschreiben, mit welchen Parametern eine Funktion aufgerufen werden darf und welches Ergebnis sie zurückliefert. Durch einen Doppelpunkt getrennt ist dabei jeweils der Typ der Parameter bzw. der Rückgabe angegeben, wobei Void bedeutet, dass eine Funktion kein Ergebnis (bzw. undefined) liefert. Einige Typangaben sind aus Kompatibilitätsgründen auch weiter gefasst als notwendig, indem entweder gar keinen Typ angeben oder der sehr allgemein gehaltene Typ Object verwendet wird. Leider haben sich die Signaturen von Version zu Version geändert. Mit den hier in der Version 7.2 von Flash ermittelten Signaturen gehen Sie aber auf Nummer sicher, da diese meist auch in älteren Flash-Versionen funktionieren. ##### Wo finde ich die Toplevel-Funktionen? Die Toplevel-Funktionen sind in der Datei toplevel.as innerhalb des classes-Ordners im Konfigurationsverzeichnis von Flash aufgeführt. Es gibt noch weitere globale Funktionen, die jedoch größtenteils undokumentiert sind und sich nicht in der Datei toplevel.as befinden. Mehr zu diesen Funktionen erfahren Sie im Kapitel »Ostereier« ab Seite 593.

Tabelle 9.1 Toplevel-Funktionen in Flash MX 2004 (Stand Version 7.2)

Signatur | Beschreibung | Bemerkung
call(bild:Object):Void; | Ruft den ActionScript-Code in einem Bild auf. | Der Parameter bild kann sowohl eine Bildbezeichnung (String) oder eine Bildnummer (Number) sein. Die Verwendung wird nicht mehr empfohlen.
clearInterval(id:Number):Void; | Löscht ein Intervall, das zur zeitabhängigen Ausführung von Code definiert wurde. | Siehe Kapitel 12, »Ereignisse«
duplicateMovieClip(movieclip:String, neuerName:String, tiefe:Number):Void; | Aktion zum Duplizieren eines Movieclips. | Siehe Kapitel 6, »Aktionen«
escape(wert:String):String; | Konvertiert eine Zeichenkette in die URL-Schreibweise (Sonderzeichen werden durch eine hexadezimale Zahl mit führendem Prozentzeichen dargestellt). |
eval(ausdruck:String):Object; | Aktion zum Ermitteln eines Objektes abhängig von dem Objektnamen. | Siehe Kapitel 7, »Variablen«
fscommand(kommando:String, parameter:String):Void; | Aktion zum Senden von Nachrichten an den Flash Player bzw. eine Host-Anwendung. | Siehe Kapitel 6, »Aktionen«
getProperty(movieclip:Object, eigenschaft:Object):Object; | Ermittelt den Wert einer Eigenschaft eines Movieclips. | Siehe Kapitel 15.1, »Eigenschaften«
getTimer():Number; | Ermittelt die Zeit seit dem Start des Flash Players in Millisekunden. |
getURL(url:String, fensterOderFrame:String, postOderGetMethode:String):Void; | Ruft die angegebene URL auf. | Siehe Kapitel 6, »Aktionen«
getVersion():String; | Ermittelt die Version und das Betriebssystem des Flash Players. |
gotoAndPlay(szeneOderBild:Object, bild:Object):Void; | Verzweigt zu einem anderen Bild in der Zeitleiste. | Die Parameter können unterschiedliche Typen haben. Siehe Kapitel 6, »Aktionen«.
gotoAndStop():Void; | Verzweigt zu einem anderen Bild in der Zeitleiste. | Die Parameter können unterschiedliche Typen haben. Macromedia hat hier leider keine vollständige Signatur in der Form gotoAndStop(szeneOderBild:Object, bild:Object):Void; angegeben. Siehe Kapitel 6, »Aktionen«.
Signatur | Beschreibung | Bemerkung
int(zahl:Number):Number; | Konvertiert eine Zahl in eine Ganzzahl. | Die Verwendung wird nicht mehr empfohlen.
isFinite(value:Object):Boolean; | Überprüft, ob eine Zahl endlich ist. | Siehe Kapitel 7, »Werte«
isNaN(value:Object):Boolean; | Überprüft, ob ein Wert keine Zahl (NaN für »not a number«) ist. | Siehe Kapitel 7, »Werte«
loadMovie(url:String, movieclip:Object, postOderGetMethode:String):Void; | Lädt eine SWF- oder JPEG-Datei in einen Movieclip. | Siehe Kapitel 6, »Aktionen«
loadMovieNum(url:String, stufe:Number, postOderGetMethode:String):Void; | Lädt eine SWF- oder JPEG-Datei in eine Stufe (engl. Level). | Siehe Kapitel 6, »Aktionen«
loadVariables(url:String, movieclip:Object, postOderGetMethode:String):Void; | Lädt Variablen in einen Movieclip. | Siehe Kapitel 6, »Aktionen«
loadVariablesNum(url:String, stufe:Number, postOderGetMethode:String):Void; | Lädt Variablen in eine Stufe (engl. Level). | Siehe Kapitel 6, »Aktionen«
nextFrame():Void; | Wechselt in das nächste Bild. | Siehe Kapitel 6, »Aktionen«
nextScene():Void; | Wechselt in die nächste Szene. | Siehe Kapitel 6, »Aktionen«
parseFloat(wert:String):Number; | Konvertiert eine Zeichenkette in eine Zahl. | Siehe Kapitel 7, »Werte«
parseInt(wert:String,basis:Number):Number; | Konvertiert eine Zeichenkette in eine Zahl. | Siehe Kapitel 7, »Werte«
play():Void; | Spielt die Zeitleiste ab. | Siehe Kapitel 6, »Aktionen«
prevFrame():Void; | Wechselt in das vorhergehende Bild. | Siehe Kapitel 6, »Aktionen«
prevScene():Void; | Wechselt in die vorher-gehende Szene. | Siehe Kapitel 6, »Aktionen«
print(movieclip:Object, begrenzungsrechteck:String):Void; | Druckt das angegebene Ziel. | Siehe Kapitel 6, »Aktionen«
printAsBitmap(movieclip:Object, begrenzungsrechteck:String):Void; | Druckt das angegebene Ziel. | Siehe Kapitel 6, »Aktionen«
printAsBitmapNum(stufe:Number, begrenzungsrechteck:String):Void; | Druckt das angegebene Ziel. | Siehe Kapitel 6, »Aktionen«
printNum(stufe:Number, begrenzungsrechteck:String):Void; | Druckt das angegebene Ziel. | Siehe Kapitel 6, »Aktionen«
random(zahl:Number):Number; | Berechnet eine Zufallszahl. | Die Verwendung wird nicht mehr empfohlen.
removeMovieClip(movieclip:Object):Void; | Entfernt einen Movieclip. | Siehe Kapitel 6, »Aktionen«
setInterval():Number; | Definiert ein Intervall, das zur zeitabhängigen Ausführung von Code definiert wurde. | Macromedia hat hier keine vollständige Signatur angegeben. Siehe Kapitel 12, »Ereignisse«.
Signatur | Beschreibung | Bemerkung
setProperty(movieclip:Object, eigenschaft:Object, wert:Object):Void; | Setzt eine Eigenschaft eines Movieclips. | Siehe Kapitel 15.1, »Eigenschaften«
startDrag(movieclip:Object, zentriere:Boolean, links:Number, oben:Number, rechts:Number, unten:Number):Void; | Hängt einen Movieclip an den Mauszeiger. | Siehe Kapitel 6, »Aktionen«
stop():Void; | Stoppt das Abspielen der Zeitleiste. | Siehe Kapitel »Aktionen«.
stopAllSounds():Void; | Stoppt alle Sounds. | Siehe Kapitel 6, »Aktionen«
stopDrag():Void; | Löst den gerade am Mauszeiger gebundenen Movieclip. | Siehe Kapitel 6, »Aktionen«
targetPath(movieclip:MovieClip):String; | Ermittelt den Pfad zu einem Movieclip in der Punktschreibweise. | Siehe Kapitel 11, »DOM«
toggleHighQuality():Void; | Aktion zum Wechsel der Darstellungsqualität. | Die Verwendung wird nicht mehr empfohlen. Siehe Kapitel 6, »Aktionen«.
trace(wert:String):Void; | Gibt wert als Zeichenkette im Ausgabefenster aus. |
unescape(wert:String):String; | Konvertiert eine Zeichenkette aus der URL-Schreibweise in die »normale« Darstellung. |
unloadMovie(movieclip):Void; | Löscht den Inhalt eines Movieclips. | Siehe Kapitel 6, »Aktionen«
unloadMovieNum(stufe:Number):Void; | Löscht den Inhalt einer Stufe (engl. Level). | Siehe Kapitel 6, »Aktionen«
updateAfterEvent():Void; | Aktualisiert die Darstellung auf dem Bildschirm. | Siehe Kapitel 6, »Ereignisse«
MMExecute(ausdruck:String); | Erlaubt das Aufrufen von Flash JavaScripts innerhalb der Flash-Entwicklungsumgebung. | Siehe Kapitel 4.4, »Anpassen«
<< zurück | <top> | vor >>
Zum Katalog
ActionScript 1 und 2 bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchtipps
| Einstieg in ActionScript
| Einstieg in Flash 8
| Flash 8 und PHP
| Flash 8-Tutorials
| Dreamweaver 8
| Webseiten programmieren und gestalten
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 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.

[Galileo Design]
Galileo Press GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de