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 2 Versionen
|  | 2.1 Ursprung
|  |  | 2.1.1 Aktionen
|  |  | 2.1.2 ActionScript
|  |  | 2.1.3 ActionScript 2
|  |  | 2.1.4 JavaScript und ECMAScript
|  |  | 2.1.5 Java und ECMAScript 4
|  | 2.2 Alternativen und Ausblick
|  |  | 2.2.1 Standard- und Professional-Version
|  |  | 2.2.2 Alternativen zu Flash
|  |  | 2.2.3 Serverseitiges ActionScript
|  | 2.3 Umstieg
|  |  | 2.3.1 Altes ActionScript in neuen Flash-Versionen
|  |  | 2.3.2 Problemkind Flash 4
## 2.3 Umstieg Es lohnt sich mindestens aufgrund der folgenden Punkte, die Unterschiede in den Programmiermöglichkeiten der verschiedenen Flash-Versionen zu kennen:
| Der Umstieg auf eine andere Flash-Version wird erleichtert.
| Die Entscheidung für eine andere Flash-Version fällt leichter.
Falls Sie zum Beispiel von der Flash 2-Entwicklungsumgebung nach Flash 5 wechseln, dann kann es nicht schaden, wenn Sie wissen, dass aus »URL holen« seit Flash 3 die Aktion Get URL geworden ist und dass seit Flash 5 zusätzlich eine Methode namens getURL für Movieclips existiert (movieclip.getURL()). Sollten Sie bereits mit einer neueren Version von Flash arbeiten, aber Ihr Projekt erfordert den Export in ein älteres Flash Player-Format, dann sollten Sie sich ebenfalls über die Möglichkeiten im Klaren sein. Das Nachladen von SWF-Dateien funktioniert zum Beispiel erst seit Flash 3. ### 2.3.1 Altes ActionScript in neuen Flash-Versionen Falls Sie eine lieb gewonnene Aktion aus einer älteren Flash-Version in Ihrer aktuellen Entwicklungsumgebung vermissen, dann liegt das meist nur an einem unwesentlich geänderten Namen (siehe Tabelle »Anweisungen der verschiedenen Flash-Versionen«). Nur die bereits in Flash 2 eingeführten Anweisungen »URL holen und hingehen« sowie »URL holen, hingehen und abspielen« existieren in dieser Form nicht mehr. Die folgenden Skripte bieten jedoch eine identische Funktionalität (bitte beachten Sie, dass die Schreibweise in Flash 3 und Flash 4 etwas anders aussieht):
    // URL holen und hingehen mit auf Bild warten
    ifFrameLoaded ("Szene", zusätzliche Bilder) {
       getURL (URL, "Zielfenster");
       gotoAndStop ("Szene", Bild);
    }
    // URL holen, hingehen und abspielen mit auf Bild warten
    ifFrameLoaded ("Szene", zusätzliche Bilder) {
       getURL (URL, "Zielfenster");
       gotoAndPlay ("Szene", Bild);
    }
    // URL holen und hingehen ohne auf Bild zu warten
    getURL ("URL", "Zielfenster");
    gotoAndStop ("Szene", Bild);
    // URL holen, hingehen und abspielen ohne auf Bild zu warten
    getURL ("URL", "Zielfenster");
    gotoAndPlay ("Szene", Bild);
Im Verlauf der Evolution der Flash-Entwicklungsumgebung haben sich nicht nur die Schreibweisen einzelner Anweisungen und der Funktionsumfang verändert: Einzelne Bestandteile der Flash-Programmiersprache gelten mittlerweile als veraltet, da es eine »bessere« Alternative gibt. Diese nicht mehr empfohlenen (frei aus dem englischen depricated übersetzt) Sprachelemente finden Sie in der Tabelle »Nicht mehr empfohlen«. Beachten Sie bitte, dass diese Sprachelemente in späteren Flash-Versionen möglicherweise nicht mehr zur Verfügung stehen. Umgekehrt sind Sie auf einige dieser Elemente jedoch weiterhin angewiesen, wenn Sie für ältere Flash Player entwickeln.

Tabelle 2.6 Anweisungen der verschiedenen Flash-Versionen

Flash 2 | Flash 3 | Flash 4 | Flash 5 oder höher | Bemerkung
URL holen und hingehen | – | – | – | Dieses Verhalten kann seit Flash 3 mit Hilfe von ifFrameLoaded, gotoAndStop und getURL simuliert werden (siehe oben).
URL holen, hingehen und abspielen | – | – | – | Dieses Verhalten kann seit Flash 3 mit Hilfe von ifFrameLoaded, gotoAndPlay und getURL simuliert werden (siehe oben).
– | – | Call | call | Verwenden Sie ab Flash 5 möglichst eine Funktionsdeklaration mit function.
– | – | Comment | comment | Seit Flash 5 wird zur Anzeige und Eingabe // im Skript verwendet.
– | – | Duplicate Movie Clip | duplicate Movieclip | Verwenden Sie ab Flash 5 möglichst die entsprechende Movieclip-Methode.
– | FS Command | FS Command | fscommand | Die Parameter dieser Anweisung für den Stand-alone-Player und Projektor haben sich sowohl im Umfang als auch in der Anwendung zwischen den Versionen verändert (siehe Kap. 27, Kurzreferenz).
URL holen | Get URL | Get URL | getURL | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Hingehen und abspielen | Go to and Play | Go to and Play | gotoAndPlay | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode. Außerdem verarbeitet erst Flash 3 oder höher Bildbezeichnungen als Sprungziel.
Gehe zu | Go to and Stop | Go to and Stop | gotoAndStop | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode. Außerdem verarbeitet erst Flash 3 oder höher Bildbezeichnungen als Sprungziel.
– | - | If | if |
– | If Frame Is Loaded | If Frame Loaded | ifFrameLoaded | Verwenden Sie anstelle der Anweisung möglichst die Kontrollstruktur if mit der Eigenschaft _framesloaded.
– | Load Movie (für Stufen) | Load Movie (für Stufen) | loadMovieNum | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | Load Movie (für Movieclips) | Load Movie (für Movieclips) | loadMovie | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | - | LoadVariables | loadVariables/loadVariablesNum | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Schritt vor | Go to next Frame | Go to Next Frame | nextFrame | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Nächste Szene | Go to next Scene | Go to next Scene | nextScene | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Abspielen | Play | Play | play | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Schritt zurück | Go to previous Frame | Go to Previous Frame | prevFrame | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Vorherige Szene | Go to previous Scene | Go to previous Scene | prevScene | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | - | Remove Movie Clip | removeMovieclip | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | - | Set Variable | set variable | Verwenden Sie möglichst den Zuweisungsoperator.
– | - | Set Property | setProperty | Verwenden Sie möglichst den Zuweisungsoperator.
– | - | Start Drag (Drag Movie Clip) | startDrag | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Stoppen | Stop | Stop | stop | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
Alle Sounds stoppen | Stop All Sounds | Stop All Sounds | stopAllSounds | Verwenden Sie seit Flash 5 möglichst die entsprechende Sound-Methode.
– | - | Stop Drag (Drag Movie Clip) | stopDrag | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | Tell Target | Tell Target | tellTarget | Anstelle dieser nicht mehr empfohlenen Anweisung sollte seit Flash 5 die Anweisung with verwendet werden.
Hohe Qualität ein-/ausschalten | Toggle High Quality | Toggle High Quality | toggleHigh Quality | Anstelle dieser nicht mehr empfohlen Anweisung sollte seit Flash 5 die Eigenschaft _quality verwendet werden.
– | - | Trace | trace |
– | Unload Movie | Unload Movie | unloadMovie | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | Unload Movie | Unload Movie | unloadMovieNum | Verwenden Sie seit Flash 5 möglichst die entsprechende Movieclip-Methode.
– | - | Loop | while |

Tabelle 2.7 Nicht mehr empfohlen

Sprachelement | Kategorie | Verfügbar seit | Nicht mehr empfohlen seit | Alternative seit Flash 5
<> | Operator | Flash 4 | Flash 5 | !=
add | Operator | Flash 4 | Flash 5 | +
and | Operator | Flash 4 | Flash 5 | &&
call | Aktion | Flash 4 | Flash MX 2004 | Funktionen
chr | Funktion | Flash 4 | Flash 5 | String.from CharCode
eq | Operator | Flash 4 | Flash 5 | ==
ge | Operator | Flash 4 | Flash 5 | >=
gt | Operator | Flash 4 | Flash 5 | >
_highquality | Eigenschaft | Flash 4 | Flash 5 | _quality
ifFrameLoaded | Kontrollstruktur | Flash 3 | Flash 5 | if und _framesloaded
int | Funktion | Flash 4 | Flash 5 | Math.round
le | Operator | Flash 4 | Flash 5 | <=
length | Funktion | Flash 4 | Flash 5 | String.length
lt | Operator | Flash 4 | Flash 5 | <
maxscroll | Eigenschaft | Flash 4 | Flash MX | Textfield. maxscroll
mbchr | Funktion | Flash 4 | Flash 5 | String.from CharCode
mblength | Funktion | Flash 4 | Flash 5 | String.length
mbord | Funktion | Flash 4 | Flash 5 | String.char CodeAt
mbsubstring | Funktion | Flash 4 | Flash 5 | String.substr
ne | Operator | Flash 4 | Flash 5 | !=
not | Operator | Flash 4 | Flash 5 | !
or | Operator | Flash 4 | Flash 5 | ||
ord | Funktion | Flash 4 | Flash 5 | String.char CodeAt
random | Funktion | Flash 4 | Flash 5 | Math.random
scroll | Eigenschaft | Flash 4 | Flash MX | Textfield.scroll
substring | Funktion | Flash 4 | Flash 5 | String.substr
tellTarget | Anweisung | Flash 3 | Flash 5 | with
toggleHighQuality | Anweisung | Flash 2 | Flash 5 | _quality
### 2.3.2 Problemkind Flash 4 Da Macromedia die Architektur inkl. ActionScript mit Flash 5 stark verändert hat, gibt es gerade bei der Umstellung von Flash 4 nach Flash 5 Schwierigkeiten. Bei allen anderen Versionswechseln sind keine gravierenden Probleme bekannt geworden. Der Wechsel von Flash 5 nach Flash MX gestaltet sich zum Beispiel recht problemlos – einmal abgesehen von dem veränderten Gültigkeitsbereich (Scope) von Variablen (siehe Kapitel 11). Und auch der Flash 6 Player hat keine Probleme mit älteren Flash Player-Dateien, da er extra dafür in einem Kompatibilitätsmodus arbeitet. ##### Flash Player 4-Datei in einem Flash Player 5 Was passiert aber, wenn ein Flash 4-Film von einem Flash 5-Plug-in abgespielt wird? Die Version 5 des Flash Players erzeugt gerade im Zusammenspiel mit manchen älteren Flash-Filmen nicht immer das gewünschte Ergebnis (http://www.macromedia.com/support/flash/ts/documents/player5_issues.htm). ##### Probleme Folgende Probleme mit dem Flash Player 5 (Release 36 oder niedriger) sind bekannt und weitestgehend mit neueren Versionen des Flash Players behoben worden:
| Bildrate (Abspielgeschwindigkeit): Flash 4-Filme konnten maximal mit 18 Bildern pro Sekunde abspielen (auch wenn sich höhere Werte angeben ließen). Der Flash Player 5 versucht, diese Filme mit der eingestellten Bildrate abzuspielen, wodurch sie schneller als erwartet laufen. Wenn Sie die Bildrate auf einen Wert zwischen 15 und 18 korrigieren, sollte das Problem nicht mehr auftreten.
| Systemressourcen (Prozessorauslastung): Da Flash-Filme mit dem Flash Player 5 schneller ablaufen können, benötigen Sie mehr Systemressourcen. Um den Prozessor zu entlasten, wählen Sie eine niedrigere Bildrate zwischen 15 und 18 Bildern pro Sekunde.
| Goto-Aktion funktioniert nicht mit Ausdrücken: Falls bei einer Goto-Aktion das erste Zeichen einer Bildbezeichnung eine Zahl ist, dann interpretiert Flash dies als Bildnummer. Um das zu verhindern, sollten Sie Bildbezeichnungen immer mit einem Buchstaben beginnen lassen. Dieses Problem soll in einer zukünftigen Version des Flash Players behoben werden.
| Objekte und Variablen mit dem gleichen Namen: Falls Sie Objekte (Filmsequenzen etc.) und Variablen mit denselben Namen in einem Flash-Film verwendet haben, kann dies zu unerwarteten Ergebnissen führen. Stellen Sie sicher, dass jeder Name für Variablen und Objekte eindeutig ist.
| Bezeichner mit Sonderzeichen: Vermeiden Sie Sonderzeichen in Objekt- und Variablennamen, da dies zu unerwarteten Ergebnissen führen kann.
| Textauswahl-Zeiger (engl. I-beam) ist nicht sichtbar: In älteren Flash Playern wurde der Textauswahl-Zeiger in der Textfarbe angezeigt. Im Flash 5 Player ist er schwarz. Dieses Problem soll in einer zukünftigen Version des Flash Players behoben werden.
| Artefakte bei Texten: Es gibt verschiedene Darstellungsprobleme bei Text. Einige lassen sich lösen, wenn der Text von einer Box umrahmt wird. Dieses Problem soll in einer zukünftigen Version des Flash Players behoben werden.
| Scroll-Text springt immer an den Anfang zurück: Falls Sie Felder über die Eigenschaft scroll steuern, springen diese immer wieder zurück an den Anfang, sobald neue Daten geladen werden. Dieses Problem soll in einer zukünftigen Version des Flash Players behoben werden.
| Internet Explorer 5.5 stürzt ab: Der Internet Explorer 5.5 kann abstürzen, falls ein Flash-Film in einer Tabellenzelle eingebettet ist und vom Flash Player 5 abgespielt wird. Dieses Problem soll in einer zukünftigen Version des Flash Players behoben werden.
##### Ältere Flash Player und neuere Flash Player-Dateien Abgesehen von Flash Player 4-Dateien im Flash Player 3 ist SWF nicht abwärtskompatibel. Nur in diesem Fall spielen abgesehen von den neuen Flash 4-Funktionen die entsprechenden Filme problemlos in einem Flash Player 3 ab. Umgekehrt ist das – abgesehen von wenigen Schwierigkeiten bei der Umstellung von Flash 4 auf Flash 5 – kein Problem: Die Flash Player sind alle abwärtskompatibel. ##### Flash 4-Datei in Flash 5 oder höher importieren Beim Öffnen einer älteren Flash-Datei (FLA) insbesondere der Version 4 konvertieren Flash 5 und Flash MX diese. Folgende Änderungen werden dabei in ActionScripts durchgeführt:
| Jedes Vorkommen des Gleichheitsoperators = in Flash 4 wird in den seit Flash 5 verwendeten Gleichheitsoperator == umgewandelt.
| Die Operatoren +, ==, !=, <>, <, >, >= und <= haben seit Flash 5 eine neue Bedeutung erhalten. Flash 4-Dateien werden entsprechend konvertiert. In Flash 4 handelte es sich dabei immer um nummerische Operatoren, seit Flash 5 können diese Operatoren auch für andere Datentypen verwendet werden. Um Problemen vorzubeugen, wird aus diesem Grund für alle Operanden (soweit das sinnvoll ist) die Funktion Number eingefügt.
| In Flash 4 erzeugte \n einen Wagenrücklauf. Seit Flash 5 wird \n (ASCII 13) entsprechend dem ECMA 262-Standard als Zeilenvorschub interpretiert (ASCII 10). Aus diesem Grund wird das Vorkommen von \n in einer Flash 4-Datei in \r geändert.
| In Flash 4 wurden Zeichenfolgen mit & verknüpft. Seit Flash 5 wird dieser Operator für bitweise Operationen verwendet. Zeichenfolgen werden entweder mit + oder add aneinander gehängt. Aus diesem Grund konvertiert Flash seit Version 5 alle Vorkommen von & in einem Flash 4-Film in add.
| Viele Funktionen benötigten in Flash 4 keine Klammern. Aufgrund der überarbeiteten und konsistenteren Syntax seit Flash 5 werden diese Klammern automatisch hinzugefügt.
| Falls die Funktion getProperty mit einem ungültigen Ziel, also einem nichtvorhandenen Movieclip, verwendet wird, dann gibt Flash seit der Version 5 undefined zurück (bei manchen Aktionen wird undefined automatisch in 0 konvertiert). In Flash 4 war das Ergebnis in diesem Fall 0. Um daraus resultierende Probleme zu verhindern, wird an den entsprechenden Stellen bei der Konvertierung die Funktion number eingefügt.
Außerdem sollten Sie gleiche Namen für Variablen- und Objekte vermeiden, auf Sonderzeichen und Leerzeichen in Bezeichnern verzichten und keine Schlüsselwörter für Bezeichner verwenden (siehe Tabelle »Schlüsselwörter«) auf Seite 112. Die durchgeführten Konvertierungen zeigt Flash im Ausgabefenster (Fenster • Ausgabe) an. Auch mögliche Probleme, wie doppelt vergebene Namen, werden dort in den meisten Fällen protokolliert.
<< 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