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 2 Versionen
  gp 2.1 Ursprung
    gp 2.1.1 Aktionen
    gp 2.1.2 ActionScript
    gp 2.1.3 ActionScript 2
    gp 2.1.4 JavaScript und ECMAScript
    gp 2.1.5 Java und ECMAScript 4
  gp 2.2 Alternativen und Ausblick
    gp 2.2.1 Standard- und Professional-Version
    gp 2.2.2 Alternativen zu Flash
    gp 2.2.3 Serverseitiges ActionScript
  gp 2.3 Umstieg
    gp 2.3.1 Altes ActionScript in neuen Flash-Versionen
    gp 2.3.2 Problemkind Flash 4


Rheinwerk Design - Zum Seitenanfang

2.3 Umstieg  downtop

Es lohnt sich mindestens aufgrund der folgenden Punkte, die Unterschiede in den Programmiermöglichkeiten der verschiedenen Flash-Versionen zu kennen:

gp  Der Umstieg auf eine andere Flash-Version wird erleichtert.
gp  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.


Rheinwerk Design - Zum Seitenanfang

2.3.1 Altes ActionScript in neuen Flash-Versionen  downtop

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


Rheinwerk Design - Zum Seitenanfang

2.3.2 Problemkind Flash 4  toptop

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:

gp  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.
gp  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.
gp  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.
gp  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.
gp  Bezeichner mit Sonderzeichen: Vermeiden Sie Sonderzeichen in Objekt- und Variablennamen, da dies zu unerwarteten Ergebnissen führen kann.
gp  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.
gp  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.
gp  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.
gp  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:

gp  Jedes Vorkommen des Gleichheitsoperators = in Flash 4 wird in den seit Flash 5 verwendeten Gleichheitsoperator == umgewandelt.
gp  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.
gp  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.
gp  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.
gp  Viele Funktionen benötigten in Flash 4 keine Klammern. Aufgrund der überarbeiteten und konsistenteren Syntax seit Flash 5 werden diese Klammern automatisch hinzugefügt.
gp  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
  
  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