flas
Actions English

Programmversion
DEUTSCH
Programmversion
ENGLISH
Grundlagen Grundlagen
Grundlagen Flash MX  
Aktionen Actions
Shortcuts Tastaturbefehle Shortcuts Tastaturbefehle
   
Forum Download
Hier werden die Actions behandelt, mit denen man seit Flash 4 viele Möglichkeiten hat, einen Flash Film zu programmieren. Die deutsche Version dieser Seite ist wesentlich umfangreicher. Diese Seite wurde ab Mai 2001 nicht mehr aktualisiert.

Actions
Stop, Play
Go to
Load Movie
If Frame is loaded, Scene wird erst gestartet wenn alles geladen ist
Tell Target
Ebenen ansteuern
Call
If, Else, Else If
Event Handler (Ereignisse auf -Mausklick-Tastendruck-Keyframe )
Properties (Symbolen bestimmte Eigenschaften zuweisen)
Eigenschaften abfragen (Get Properties)
Drag Movie Clip (Symbol, welches den Bewegungen des Mauszeigers folgt)
Drag Movie Clip (mit der Maus verschiebares Element)
Variable
Expression
abc Button, string und expression
Expression Editor
E-mail per CGI Formular
Projector steuern mit fscommand (Flash 5)
hitTest Abschiessen und Treffen
Datum abfragen
Text aus einer externen Datei laden


zurück, zurück geschwind

Actions
Alle Actions kann man entweder in einem Keyframe oder für einen Button oder auf Tastendruck vergeben (rechte Maustaste, Properties, Actions) das nennt man auch Event-Handler. Ab Flash 5 kann man auch Filmsequenzen Actions zuweisen.
Die Actions werden durch anklicken des + Zeichens gewählt, mit dem - Zeichen kann man sie wieder löschen.
Ab Flash 5 erscheinen die Actions im Bedienfeld Aktion, welches man auch mit rechter Maustaste aufrufen kann.
In diesem Menu kann man oben links (kleiner schwarzer Pfeil) zwischen Normalmodus und Expertenmodus umschalten.
Im Normalmodus erscheint je nach gewählter Action, die alle rechts aufgelistet sind, ganz unten ein Menue, wo man gewissen Eingaben machen kann.
Im Expertenmodus kann man per Texteingabe programmieren.
Man kann den Script mit Strg C kopieren und Strg V einfügen.


Stop und Play
Film anhalten mit der Action Stop
Film abspielen lassen mit der Action Play

Go to
Action wählen Go to
Frame Nummer angeben, unten Control: Go to and Play aktivieren oder deaktivieren
eventuell gewünschte Scene angeben
anstatt einer Frame Nummer kann man auch Label wählen, Vorausetzung ist, man hat einen Keyframe zuvor einen Namen gegeben, (Keyframe, Properties, Label)
mit Tell Target kann man auch die einzelnen Frames eines Animations Symbols (Movie Clip) ansteueren
zur Auflistung der Tips

Load / Unload Movie
(Beispiel Fla Datei downloaden)
Load Movie Action hat den Vorteil, daß man einzelne swf Movies im Hauptfilm laden kann, dadurch kann man die Dateigröße reduzieren, und es wird nur das geladen, was auch aufgerufen wird. So ließe sich beispielsweise auch ein Hintergrundsound nachträglich laden.

keyframe oder button, rechte Maustaste, Properties
Actions, Load Movie, Namen des ...swf angeben, (wenn er nicht im gleichen Ordner liegt,. Pfad oder URL angeben)

am Besten das impotierte movie hat die gleiche Größe, andernfalls erscheint es in der linken oberen Ecke


Level:
Die Ebenen entsprechen nicht den bekannten Ebenen oder Layern. Die Ebenen haben in Zusammenhang mit Load Movie eine ganz eigene Bedeutung. Will man mehrere Filme gleichzeitig laufen lassen, muß jeder Film eine eigene Ebene bekommen. Es kann jeweils nur ein Film in einer Ebene laufen. Ein auf gleicher Ebene geladener Film ersetzt den schon laufenden Film.
Überschneiden sich mehrere geladenen Filme liegt der Film mit der niedrigsten Nummer unten, während die anderen der Reihenfolge nach darüber liegen.
Sonderfall Ebene0 der ganze Flash Film wird beendet und durch den geladenen ersetzt. Es werden die Proportionen des ursprünglichen Films übernommen.
Man kann Filme mit ihren Zeitleisten und Bildern von anderer Stelle aus ansteuern, um zu einem bestimmten Bild zu springen, siehe Ebenen ansteuern.

Target:

Anstatt Level kann man auch Target wählen und hier den Instancenamen eines Movieclip Symbols angeben.
Der Movieclip wird durch den swf Film ersetzt,
Die linke obere Kante des swf movies wird am Mittelpunkt der Intstance ausgerichtet (zumindest so ungefähr).

Variables, dont send
durch diese Option werden die Variablen nicht mitgeladen

Unload Movie
Mit der Option "unload Movie" wird der zuletzt geladenen Film wieder entfernt, wenn man kein level oder target definiert hat.

Load variables into location
Durch diese option , werden lediglich die Variablen eines Movieclips geladen, außerdem kann man auch Variablen aus einer Textdatei laden, siehe dazu die Beispieldatei textlade.fla

up ist englisch und heißt rauf
If Frame is loaded
(Download bitte warten, der Film wird erst gestartet wenn alles geladen ist)
Keyframe, recht Maustaste Properties, Actions, + Symbol
If frame is loaded
Scene und Frame Nummer angeben, auf dessen "cache load" gewartet werden soll
(wahrscheinlich den letzten Frame der letzten Scene)
+ Symbol, gewünschte Action vergeben, wahrscheinlich Go to
"Go to and Play"-Feld anklicken, gewünschten Scene und Frame Nummer wählen, wo der eigentliche Film startet
dann macht man im nächsten Frame einen keyframe mit der Action Go to auf den ersten Frame des Films, also den Frame
wo die Action "If frame is loaded" enthalten ist, so läuft der Film solange zwischen diesen beiden Frames hin und her, bis der Film geladen ist.

(Beispieldatei runterladen)
eine besonders elegante Lösung bei großen Movies, ist ein Zähler, der die Prozentzahl des geladenen Movies anzeigt,
hierbei erstellt man ein paar Keyframes am Anfang, die die verschiedenen Prozentzahlen der Reihe nach anzeigen,
dann vergibt man jeweils die Action "If Frame is loaded" und springt damit von einem keyframe der Anzeige zum nächsten, bis der ganze Film geladen ist,

hier ein klick und du kommst zurück
Tell Target
hat die einzige Aufgabe, die Timeline zu bestimmen die angesteuert werden soll , mit Tell Target kann man Movieclips, oder andere, mit der Load Movie Action geladene, Flash movies ansteuern, (Beispiel Fla Datei downloaden)
wofür braucht man das?
Man stelle sich vor man hätte einen Text der durch Maus rollover über einen Button erscheint, beim rollover über einen anderen Button, erscheint an gleicher Stelle ein anderer Erklärungstext (wie in meinem Rockmenue) dazu erstellt man ein Moviesymbol mit mehreren Texten in verschiedenen Keyframes, welche man auf Mausklick ansteuern kann. Also, Tell Target, Moviesymbol ansteuern und dann Go to and play Frame1, frame2, frame3, dann erscheint Text1 oder Text2 oder Text3, natürlich kann anstatt eines Textes auch etwas anderes erscheinen.
back to the top

das ganze nochmal langsam, zum Nachmachen
  1. Movie Symbol erschaffen,
  2. Edit Movie
  3. in der Timeline erstelle ich mir mehrere keyframes, in jedem keyframe erscheint ein anderer Text oder ein anderes Bild
  4. jeden keyframe mit rechter Maustaste anklicken, Properties, Action, stop
  5. zurück zum Hauptfilm Edit, Edit Movie
  6. Movie symbol an die gewünschte Stelle setzen
  7. Movie Symbol doppelklicken, bzw. rechte Mausaste, Properties, Instance Name vergeben.
  8. Button erschaffen, rechte Maustaste, Properties, Action,+, Tell Target,
  9. dann steht da.:
    On realease
    begin tell target
    end tell target
    end on
  10. auf on realease klicken und gewünschte Action,(z.b. mouse over) angeben
  11. begin tell target auf gewünschte Instance die oben erscheint klicken, (siehe 7)
  12. derName erscheint dann unten im Fenster
  13. danach kann man oben auf das + Zeichen klicken und eine gewünschte Actio vergeben z.B. Go to
  14. hier gibt man dann den gewünschten Frame des movie clips an, (siehe 3)

ACHTUNG; um mit dem gleichen button eine URL aufzurufen, muß man folgendes beachten:
es genügt nicht, nach der Tell Target Action das + Zeichen anzuklicken und Get Url zu wählen,
sondern man klickt auf end on, dann wählt man die Action Go To (+ Zeichen) und wählt on release
anschließend wählt man dann Get URL,
logisch sonst würde die Url schon durch den mouse rollover Befehl aufgerufen.

EBENEN ANSTEUERN
um andere Ebenen anzusteuern, gelten die gleichen Regeln wie in Html (relatives Referenzieren) z.B
2 Ebenen höher /ebene1/ebene2
eine Ebene zurück ../ebene

ein Symbol ist vom Hauptfilm aus gesehen, eine Ebene höher, will man vom Symbol aus (edit, edit movie) den Hauptfilm ansteuern geht man eine Ebene zurück

Sonderfall mit der Action Load movieclip geladene Filme, dort kann man auch die Bezeichnungen _level0, _level1, _level2 usw. angeben, das entspricht den Ebenen der geladene Filme _level0 ist der Hauptfilm (siehe Load Movie)

(Beispiel Fla Datei downloaden) Pfade.fla
Ab Flash 5 wird auch die Punkt Syntax verwendet, das heißt anstatt Schrägstriche werden Punkte verwendet, genau, wie in Javascript.
Am Einfachsten kann man den gewünschten Pfad mit dem Zieleditor des Actionsfenster einstellen. Ganz unten rechts befindet sich der Button in Form eines kleinen Kreises mit Kreuz.
Dort kann man zwischen Punktsyntax und Schrägstrichen wählen, außerdem kann man den Pfad relativ oder absolut angebeben. Es gibt hier 2 Aliase _root bedeutet die oberste Filmebene oder Zeitleiste und _parent bedeutet eine Ebene zurück. Hier ein Beispiel diese Action wird einem Movieclip zugewiesen, welcher dann auf Mausklick den Hauptfilm stoppt.
onClipEvent (mouseDown) {
this._root.stop();
}


this. steht hier anstatt des Instanznamens und bedeutet, daß diese Aktion sich auf den Movieclip selbst bezieht. Dann folgt oben erwähntes _root getrennt durch einen Punkt, also befinden wir uns nun auf der Hauptfilmzeitleiste, die durch die Aktion stop() gestoppt wird.
Ein Movieclip der in einem Movieclip eingebettet ist, könnte mit _parent den Movieclip, der eine Ebene höher liegt ansprechen. Anstatt der Aktion stop() in diesem Beispiel kann beispielsweise auch der Instanzname eines anderen Movieclips hinter _root. stehen, um diesen mit einer folgenden Aktion anzusprechen. Hier ein Beispiel, wo anstatt, TellTarget die Aktion with verwendet wird.

onClipEvent (mouseDown) {
with (_root.quader) {
gotoAndStop (5);
}
}

Auch diese Aktion wurde einer Filmsequenz zugewiesen. mit with (_root.quader) wird die Filmsequenz mit Instanznamen "quader" angesprochen, welche im Hauptfilm eingebettet ist, gefolgt von der Aktion gotoAndStop (5)

 

back to the top
Call
(Beispiel Fla Datei downloaden)
Call ist ähnlich der Actions Go to und TellTarget, jedoch wird hier nicht der gesamte Inhalt des Keyframes geladen, sondern lediglich, die in diesem Keyframe vergebene Action.
Call dient dazu Routinen also eine Reihe von Actions von verschiedenen Stellen aus aufzurufen.
Man definiert gewünschte Actions in einem keyframe, (welcher sich auch in einem Movie Clip Symbol befinden kann)
um diese Actions aufzurufen, wählt man die Action Call, und gibt im Feld Frame den gewünschten Keyframe an
der Keyframe kann eine Zahl sein, oder der zuvor vergebene Name es Keyframes (Properties, Label)
befindet sich der Keyframe in einem Movieclip, sieht die Schreibweise so aus
Instancename:keyframe


if, else und if else

Ich beschreibe hier mal die Schreibweise für Flash 5
{ if (hier steht die Bedingung) {hier steht was passieren soll, wenn die Bedingung erfüllt ist in geschweiften Klammern. Die Anweisungen werden mit ; abgeschlossen. Weitere Anweisungen können jeweils ein einer neuen Zeile hinzugefügt werden. } }

{ if (/:z==?10) {
/:x = /:x+1;
}
}

Im folgenden gibt es 2 Bedingungen im Sinne von das eine oder das andere. Das Ganze in Klammern und die beiden Bedingen mit or verbunden. Ab Flash 5 kann man statt or auch || schreiben (der Strich liegt mit AltGr auf der < Taste). Statt and kann man in Flash 5 auch && schreiben. Beides entspricht der Javascript Syntax.
Dann gibt es 2 Anweisungen, die passieren, wenn eine der beiden Bedingungen erfüllt ist. Einmal die y Position wird um -50 versetzt und die Variable /:x wird um 1 erhöht. Diese beiden Anweisungen werden mit Strichpunkt getrennt.
Dann kommt else ins Spiel, also wenn keine der beiden Bedingungen erfüllt sind, passiert das, was hinter else definiert ist. Man beachte was in geschweiften Klammern steht und wie die Klammern verschachtelt sind.

{ if (_y>450 or z =10) {
_y = -50; /:x = /:x+1;
} else {
_y = _y+9;
}
}

Dann gibt es noch else if, was anstelle von else stehen kann. Nachdem die erste Bedingung abgefragt wurde, kann an durch else if eine weitere Bedinung definieren, die anschließend überprüftt wird.
Im Normalmodus oder der Scripthilfe oder auch in Flash 4 werden automatisch die richtigen Klammern beim Einfügen der Action gesetzt.


Ab Flash 5 können kleinere If Abfragen auch so geschrieben werden

x=Wert<9 ? 4 : 6 ;
Es bedeutet
Wert= Bedingung? das wird dem Wert zugewiesen wenn Bedingung erfüllt ist : das wird dem Wert zugewiesen wenn Bedinung nicht erfüllt ist

Das entspräche folgender if Abfrage

if (Wert <9){
x=4;
}else{
x=6;
}

to the top
EVENT HANDLER

Die ersten 6 Actions -Go to, Play, Stop, Toggle High Quality, Stop All Sounds, and Get URL- sind alles was man braucht um einen interessanten Flash Film zu gestalten. Damit ist der Film aber noch nicht interactiv. Dazu braucht man die sogenannten Event Handler. Event Handler bestimmen die Konditionen unter denen ein Ereignis stattfinden soll.
Es gibt 3 Arten

to the top
Mausaktivität
auf Buttons hier unterscheidet man zwischen rolling (roll over) ohne Mausklick und dragging Mausbewegung mit gedrückter Maustaste, diese Eventhandler werden im Hauptfilm vergeben nicht in den 4 Frames der buttons, Actions aus diesen Frames werden ignoriert

  • Press ein einzelener Mausklick besteht aus 2 Teilen herunterdrücken press und wieder loslassen release
  • Relase wird ausgeführt wenn beides ausgeführt wird press und relase. Das ist der Standard Event Handler für buttons
  • Relase outside über der Hit-Area Maustaste drücken, außerhalb der Hit-Area loslassen
  • Roll Over mit losgelassener Maustaste über die Hit-Area eines buttons gehen sollte nicht dafür eingesetzt werden optische Veränderungen an buttons einzuleiten, sonder roll over ist nur dazu da Actions einzuleiten
  • Roll Out wenn man mit losgelassener Maustaste die Hit-Area eines buttons verlassen hat
  • Drag Over Maustaste wird gedrückt während man über der Hit-Area ist, Maus wird aus der Hit-Area herausbewegt (immer noch mit gedrückter Maustaste), Maus wird wieder zurück über die Hitarea bewegt (immer noch mit gedrückter Maustaste) das ist etwas merkwürdig kann aber in einigen Spielen Anwendung finden
  • Drag Out maustaste wird gedrückt während man über der Hit-Area ist, Maus wird aus der Hit-Area herausbewegt (immer noch mit gedrückter Maustaste)

to the top
Tastendruck, Keystroke Ereignisse auf Tastendruck
Die Vorgehensweise erscheint einigen vielleicht etwas verwirrend, da man erst einen Button auf der Bühne plazieren muß, um den Keystroke Event Handler auszuführen

  1. Einen neuen Layer erstellen
  2. einen Button dort plazieren
  3. Properties, Actions aufrufen (rechte Maustaste)
  4. + Zeichen wählen, On Mouse Event
  5. Keystroke anklicken, gewünschten Buchstaben im Feld eingeben z.B. s
  6. On (Key: s)"diese Stelle markieren
  7. + Zeichen und gewünschte Action aussuchen

Einige Besonderheiten sind zu beachten:

  • Esc kann man nicht vergebem
  • enter < > sollte man auch nicht nehmen da die für Programmierzwecke reserviert sind, wenn man das trotzdem macht, sollte man das auf jeden Fall mal im Browser testen, ob es geht
  • Tastenkombinationen wie (strg + s) kann man nicht vergeben
  • Groß- Kleinschreibung wird unterstützt, das nennt man auch Case sensitiv, es gibt keine Möglichkeit das zu verhindern, also S und s brauchen jeweils eine Action, man kann natürlich für beide die selbe Action ausführen lassen, dann hätte man das gleiche Ziel erreicht, man muß es nur dann 2 mal machen
  • wenn das Movie im Browser präsentiert wird muß es "focus" sein, das heißt der User muß vorher mindestens einmal irgendwo im Flash Movie mit der Maus geklickt haben

to the top
Keyframes
(Event Handler)
die Actions hängen nicht vom User ab sondern werden ausgeführt sobald der entsprechende Keyframe erreicht wird, Keyframes mit Actions sollten einen eigenen Layer bekommen

  • einen Layer mit ein paar Frames und Keyframes erschaffen
  • in der Timeline in einem Keyframe Action aufrufen durch doppelklick oder rechte Maustaste, Properties, Action
  • + Zeichen (oben links) gewünschte Action wählen z.B. Go To
  • Keyframes mit Actions erkennt man an an dem kleinen a (in der Timeline)


top of the pops
PROPERTIES (Eigenschaften)
mit der Action set properties kann man Symbolen bestimmte Eigenschaften zuweisen, wie z.B. Transparenz, Position, Weite, Höhe, sichtbar / unsichtbar, Rotation, Instanzname etc. (Beispiel Fla Datei downloaden)
das Ganze wird durch einen Event Handler eingeleitet, also kann es beispielsweise auf Mausklick erfolgen
  1. ein Movie Symbol erschaffen (Taste F8)
  2. Instance name vergeben: Symbol rechte Maustaste, Properties, Instance Name (unten), irgendeinen Namen eintragen
  3. einen button erstellen (Taste F8)
  4. Action vergeben:
    im Hauptfenster, Button rechte Maustaste, Action, +Zeichen anklicken, Set Properties
    Set:
    gewünschte Eigenschaft auswählen
    X position, Y position: Position Wert in Pixel, oben links ist 0
    X scale, Y scale: Weite, Höhe Wert prozentual zum Hauptfilm
    Alpha: Transparenz Werte in Prozent, also 100 ist komplett undurchsichtig
    Visibility: sichtbar, unsichtbar 1 ist sichtbar, 0 ist unsichtbar, buttons in unsichtbaren movieclips funktionieren nicht
    Rotation: Drehung Wert in Grad
    Sound buffer time: preload von Sound die Anzahl der Sekunden die verstreicht, bevor der sound gestartet wird (preload), Standard ist 5 Sekunden

    Target:
    hier den Instance Namen des Symbols angeben, welches seine Eigenschaften ändern soll, (siehe Punkt2)
    Value:
    Wert angeben (siehe Erklärung bei Set)
  5. Links steht standardmäßig On Release, durch anklicken hat man die Möglichkeit ein anderes Ereignis zu wählen (siehe Event Handler für Mausaktivität)

top of the pops

GET PPROPERTY
man kann nicht nur Eigenschaften vergeben, sondern auch welche abfragen mit get property,
das ist nicht als Action vorhanden, aber man kann es per Hand eingeben die Schreibweise ist
GetProperty ( target, _propertyname )
Unter Target wird der korrekte Pfad zum Movie, Level oder Instance-Name in Anführungszeichen angegeben,
Ebenen ansteuern, wie in html

GetProperty

Set Property

Eigenschaft von 

Definition

_x

X Position

MC

der horizontale Abstand zwischen dem Mittelpunkt eines MovieClip und der linken oberen Ecke der Bühne, in Pixeln

_y

Y Position

MC

der vertikale Abstand zwischen dem Mittelpunkt eines MovieClip und der linken oberen Ecke der Bühne, in Pixeln

_width

MC, Movie

die Weite eines Objekts in Pixeln
(Beispiel Fla Datei downloaden) (siehe properties)

_height

MC, Movie

die Höhe eines Objekts in Pixeln

_rotation

Rotation

MC

Drehung in Grad

_target

MC

ermittelt die genaue Schreibeweise, die man bei Tell Target einsetzt

_name

Name

MC

ermittelt den Instance Name

_url

MC, Movie

ermittelt den genauen Pfad zu einem .swf Movie, kann man dazu einsetzen, daß der movie clip nur auf dem eigenen server angezeigt wird, (sowas find ich aber ganz schön anstellerig)

_xscale

Weite

MC, Movie

die Weite eines Movie Clip instance (or movie) prozentual zur Weite des Hauptfilms

 

_yscale

Höhe

MC, Movie

die Höhe eines Movie Clip instance (oder movie) prozentual zur Höhe des Hauptfilms

_currentframe

MC, Movie

ermittelt die Zahl des momentanen Frames eines movie or a Movie Clip instance. (also dort wo der Abspielkopf gerade steht)
(Beispiel Fla Datei downloaden) (siehe get timer)

_totalframes

MC, Movie

ermittelt die Zahl aller Frames einer Timeline eines Movie Clip
(Beispiel Fla Datei downloaden) (siehe get timer)

_framesloaded

Movie

ermittelt die Zahl aller frames die runtergeladen wurden

_alpha

Transparenz

der Wert der Durchsichtigkeit eines Movie Clip oder movie in Prozent, dabei ist 100 komplett undurchsichtig und 0 komplett durchsichtig
(Beispiel Fla Datei downloaden) (siehe properties)

_visible

Sichtbarkeit

MC, Movie

.1 ist sichtbar, 0 ist unsichtbar, buttons in unsichtbaren movieclips funktionieren nicht

_droptarget

MC

ermittelt den Namen des letzten Movie Clips auf den ein Drag Movie Clip abgelegt wurde (versteh ich selber noch nicht)

_highquality

High quality

Movie

Qualität eines Movies. 1=Low, 2=High, 3=Best.

_focusrect

Show focus rectangle

Movie

zeigt ein gelbes Rechteck um einen button, wenn er mit der TAB Taste ausgelöst wird, Standard ist show, wenn der Wert auf 0 gesetzt wird, wird der upstate eines Buttons anstatt des gelben Rechtecks angezeigt

_soundbuftime

Sound buffer time

Movie

die Anzahl der Sekunden die verstreicht, bevor der sound gestartet wird (preload), Standard ist 5 Sekunden

.scroll

Text Field Variable

die oberste Zeile der sichtbaren Region einer Textfield Varialbe. Diese Eigenschaft kann gelesen und gesetzt werden, beispielsweise um die nächste Zeile anzuzeigen:
Set Variable: "meinText.scroll" = meinText.scroll+1
(Beispiel Fla Datei downloaden)

.maxscroll

Text Field Variable

bestimmt die Anzahl der Zeilen, einer Textfield Variablen und zwar wird der Wert untersten Zeile, der in der in der obersten Zeile, der sichtbaren Region des Textfields angzeigt werden kann, herausgegeben.
(Beispiel Fla Datei downloaden) (siehe scrolltext.fla)

Man kann Set property mit Get property kombinieren, um beispielsweise die Weite eines Movie Clips zu verdoppeln, muß das Ganze so aussehen:
Set Property ("/testmc", X Scale) = GetProperty ("/testmc", _x) * 2



jetzt aber wieder rauf


DRAG MOVIE CLIP (Beispiel Fla Datei downloaden) dragmovie.fla und dragmovie_5.fla
Symbol welches den Bewegungen des Mauszeigers folgt
  1. ein Movie Symbol erschaffen (Taste F8)
  2. Instance name vergeben: Symbol rechte Maustaste, Properties, Instance Name (unten), irgendeinen Namen eintragen
  3. in der Timeline keyframe rechte Maustaste, Properties, Action, +Zeichen, Drag Movie Clip
  4. Target Instance Name des Movie Symbols angeben (siehe 2)
    evt. lock mouse to center anklicken, damit das Symbol direkt auf dem Mauszeiger liegt

Seit Flash 5 hat man noch ein paar mehr Möglichkeiten einen Drag Movie Clip zu erstellen. Dabei kann man den Mauszeigerverschwinden lassen und die Bewegung kann außerdem sehr dynamisch gestaltet werden. Nähere Anleitungen findet ihr in der Beispieldatei dragmovie_5.fla

DRAG MOVIE CLIP, welches auf Mausklick gestartet wird,
also ein Symbol, welches man anklickt, mit gedrückter Maustaste verschiebt und durch loslassen der Maustaste wieder ablegt

  1. Ein Movie Clip Symbol erschaffen
  2. rechte Maustaste, Properties Instance Name vergeben, z.b. drag-me
  3. Movie Clip Symbol, rechte Maustaste, Edit
  4. im Frame1 des Movie Clip Symbols einen button erstellen
  5. diesen button mit rechter Maustaste, Properties, Action, +Zeichen, drag movie clip, (wir befinden uns immer noch im Edit mode des Movie Clip Symbols)
  6. Einstellungen der Action:
    start drag operation, wählen
    unter Target /drag-me eintragen, bzw. Instance Name des Movie Clip Symbols (siehe2)
  7. on release markieren (linke seite) stattdessen, on press wählen (Event Handler für Maus)
  8. end on markieren (linke seite), +Zeichen, die Action: drag movie clip wählen,
    stop drag operation wählen, hier muß on release als event handler gewählt sein


back to the top


VARIABLE
(Beispiel Fla Datei downloaden)
eine Variable ist ein Container für einen Inhalt dessen Wert ermittelt wird, während der Film läuft, der Container ist immer der gleiche, der Inhalt kann sich ändern, er kann Zahlenwerte oder Buchstaben enthalten, während der Film abläuft, kann man: aufzeichnen oder speichern, was der User getan hat, wieviel Zeit verstrichen ist, welcher Frame gerade läuft und und und (siehe Get Properties)
Alles klar? Keiner hats kapiert, vielleicht hilft folgendes Beispiel:
man könnte eine Variable mit Namen xyz definieren die den Wert 2 mal 3 enthält das wäre dann 6, genauso könnte man aber auch eine Variable definieren die den Wert 2 mal die Weite einer Filmsequenz enthält oder die Position oder was auch immer.

eine Variable mit Namen x, die global, also für den ganzen Film definiert werden soll, schreibt man so /:x

anhand des folgenden Beispiels wird bei jedem Mausklick auf einen Button einer Variablen ein Wert hinzugefügt (Beispiel Fla Datei downloaden) klick_zahl.fla

  1. ein Textfeld erstellen,
  2. Name der Variablen eingeben: Textfeld, rechte Maustaste, Eigenschaften, oben im Feld Variable schreiben wir x
  3. Schaltfläche erstellen
  4. Schaltfläche, (rechte Maus, Eigenschaften) Aktion, Set Variable, folgende Werte eintragen Variable: x Value: x + 1
  5. so müßte die Aktion des buttons aussehen
    On (Release)
    Set Variable: "x" = x + 1
    End On

anhand des folgenden Beispiels wird eine Varible definiert, die die horizontale Position des Mauszeigers enthält

  1. zuerst erstellt man ein Drag Movie clip
  2. der Instancename des Movieclips in diesem Beispiel heißt dragme
  3. man vergibt in einem Keyframe (in diesem Beispiel im Hauptfilm) die Action, Set Variable,
  4. unter Variable gibt man den Namen der Variablen an, z.B. /:x
  5. im Feld Value schreibt man
    GetProperty ( "/dragme", _x )
    so wird die horizontale Position des Drag movie clips ermittelt, (siehe Get Property) nicht vergessen den abc Button auf Expression zu setzten (siehe unten Expression)
  6. um den Wert angezeigt zu bekommen, erstellen wir ein Textfeld, rechte Maustaste, Properties, im Feld Variable (oben) gibt man den Namen der Variablen ein, in unserem Beispiel /:x

back to the top

Expression

String oder numerical Expressions sind eigentlich nur Teile des Actionsscript, deren Wert ermittlet während der Film läuft, zum Beispiel, nehmen wir mal an, man hat eine Variable y, die auf den Wert 3 gesetzt ist
in der Formel x = y + 1 ist die rechte Seite "y + 1" der Expression (Audruck), dessen Wert 4 errechnet wird.
Man kann alle mathematischen Funktionen in einem Actionscript ausführen lassen.

abc Button String und Expression
In der Action Dialogbox gibt es einen abc Button (string), den man umschalten kann auf ein Symbol mit 2 Querstrichen (expression)
Ab Flash 5 ist im Bedienfeld Aktion unten eine anklickbare Schaltfläche dahinter steht Expression.(erscheint bei entsprechend ausgewählter Action) Ohne Haken entspricht es dem abc button string mit Haken wird es auf Ausdruck gestellt.
Dazu folgendes Beispiel: Wenn ich beispielsweise 2+3 im Wertefeld eingebe, so könnte das Ergebnis 5 sein, oder es könnte 2+3 erscheinen.
Bei 5 würde es sich um "Ausdruck" handeln. Die beiden Zahlen werden als Werte angesehen, die ausgerechnet würden..
Bei 2+3 wäre es "Zeichenfolge, string". Die beiden Zahlen würden wie Buchstaben angesehen.
will man ein String Expression innerhalb einer Expression haben, muß man ihn in Anführungszeichen setzen

Expression Editor
unter dem abc Button kann man auch den Expression Editor aufrufen, mit dem man schnell verschiedene Funktionen erstellen kann,
hier einige Erklärungen aus der Flash 4 Bible (die Liste ist nicht vollständig und wird bei Gelegenheit von mir erweitert und überarbeitet)

Function Name

Syntax

Beispiel

Definition

True

True

Set Property ("/ball", Visibility)=True

Boolscher Wert gleichbedeutent mit “1”.

False

False

Set Property ("/ball", Visibility)=False

Boolscher Wert gleichbedeutent mit “0”.

Newline

Newline

Set Variable: "name"="Andy" & Newline & "Harris"

Fügt eine neue Zeile ein
(Beispiel Fla Datei downloaden) (siehe scrolltext.fla)

GetTimer

GetTimer

Set Variable: "time"=Int (GetTimer / 1000)

Wert in Millisekunden, der Zeit die verstrichen seit der Film startete.
(Beispiel Fla Datei downloaden)

Int

Int(Zahl)

Set Variable: "foo"=Int (5/2)

Ganzzahl einer variable, Zahl, oder expression. (z.B. die Ganzzahl von beiden, 2.3 und 2.9 ist 2)

Random

Random(Zahl)

Set Variable: "würfel"=Int (Random (6)) + 1

Zufallszahl zwischen 0 und (Zahl). In diesem Beipspiel werden die Zahlen des Würfels generiert.
Folgendes Beispiel: Set Variable: "random" = Random (20) erzeugt Zahlen zwischen 0 und 19
(Beispiel Fla Datei downloaden)

Length

Length (string)

Set Variable: "num_chars"=Length (name)

Anzahl der Zeichen in einem string.

Chr

Chr (asciiCode)

Set Variable: "character"=Chr (65)

ermittelt das Ascii Zeichen (Buchstabe) , aus einer numerischen Angabe
(Beispiel Fla Datei downloaden)

Ord

Ord (character)

Set Variable: “ascii_num”=Ord (“A”)

ermittelt den numerischen Wert eines Ascii Zeichens (also quasi Chr umgekehrt :-)


Email Formular per CGI (Beispiel Fla Datei downloaden)
formular.fla
Wenn man ein E-mail Formular zum Absenden per CGI mit Flash erstellen will, braucht man natürlich auch einen Provider, der einem diese Möglichkeit zur Verfügung stellt.
Also müßt ihr euch zuerst einmal um dieses Problem kümmern und euch die dementsprechende CGI Adresse besorgen. Diejenigen, die wie ich, bei Strato sind können einfach weiterlesen.

  1. Textfelder erstellen
  2. Textfeld, rechte Maus, Properties, Variable, Namen vergeben zum Beispiel für Name, Adresse, Email etc.
    Die Formularfelder "email", "realname" und "subject" haben eine Sonderrolle: Was der Besucher dort einträgt, wird als Absenderadresse, Absendername und Thema der Mail verwendet, die an Sie abgeschickt wird.
  3. Button zum Absenden erstellen
  4. Button, rechte Maus, Properties, Action: Get URL
    URL: CGI Adresse eintragen bei Strato lautet sie: /cgi-bin/mailmanager.pl
    Variblen: Mit Post versenden
  5. Frame, rechte Maustaste, Properties, Action, Set Variable
    Variable recipient
    Value: hier deine email Adresse eintragen, z.b. mail@on-design.de (Strato Kunden dürfen nur eine email bei Strato verwenden)
  6. Man kann noch weitere Variablen, die die Funktion von "hiddenfields" übernehmen, definieren, siehe Tabelle.
  7. Flash Film veröffentlichen und hochladen (bei Strato ins Hauptverzeichnis)
Weitere Variablen oder hidden Fields, wie sie bei Strato, so auch bei vielen anderen CGI Scripten üblich sind.
Variable oder hidden field Wert oder value Erklärung
subject Formularbetreffe bla bla die Betreffzeile der E-mail
print_config email,realname die Eintragungen stehen nicht nur im Head sondern werden auch noch einmal mit den anderen Formularinhalten im Body der Mail wiedergegeben. (siehe Punkt 2)
sort alphabetic die Formulardaten werden alphabetisch sortiert, sinnvoll bei Bestellungen
redirect http://www.ihredomain.de/bestätigung.html Gefällt einem die Bestätigunsseite des Providers nicht, kann man hier auch eine eigene Seite anzeigen lassen, die nach erfolgreichem Übersenden des Formulars angezeigt wird.
required name,strasse,ort Diese Felder müssen ausgefüllt werden.
print_blank_fields 1 Auch leere Felder werden übertragen.

Projektor steuern mit fscommand (Beispiel Fla Datei downloaden) fscommand.fla
mit der Action fscommand, kann man den Projector also das Programm welches den Flashfilm abspielt: beenden, das Menue ausblenden, die wirkliche Filmgröße herstellen, den Film als Fullscreen darstellen und eine exe Datei aufrufen. Hier ein Auszug aus der Flash Hilfe. Das Ganze funktioniert übrigens nicht wenn man vom Flash Programm aus, den Film testet.

Befehl Argumente Funktion

quit

Keine

Schließt den Projektor.

fullscreen

true oder false

Mit true wird der Flash Player in den Vollbildmodus gesetzt. Mit false wird der Player in die normale Menüansicht zurückgesetzt.

allowscale

true oder false

Mit false wird der Player angewiesen, den Film nur in dessen ursprünglicher Größe darzustellen. Mit true wird der Film exakt in der Größe des Players dargestellt.

showmenu

true oder false

Mit true werden sämtliche Kontextmenüelemente aktiviert. Mit false werden alle Elemente des Kontextmenüs außer der Option "Info zu Flash 5..." ausgeblendet.

exec

Pfad der Anwendung

Startet eine Anwendung also exe Datei aus dem Projektor heraus.

hitTest Treffen und Abschiessen (Beispiel Fla Datei downloaden) hitTest.fla

eineFilmsequenz.hitTest(x, y, formmarkierer);
this.hitTest(_root. _xmouse,_root._ymouse, true);

hitTest fragt x und y Position ab, die in diesem Falle der Mausposition entspricht.
_root ist ähnlich _level0 es wird die oberste Filmebene also der Hauptfilm angesprochen.
true bedeutet, daß man die Filmsequenz wirklich berühren muß und nicht nur den
unsichtbaren Begrenzungsrahmen, der jedes Objekt umgrenzt.
Andere Möglichkeit
this.hitTest(_root.ball)
Hier wird jetzt anstatt x und y der Instanzname einer anderen Filmsequenz angegeben.
Allerdings ist hier wieder der unsichtbare rechteckige Begrenzungsrahmen
ausschlaggebend, anders gehts nur mit x y Koordinaten.

Datum abfragen (Beispiel Fla Datei downloaden) date.fla

Mit dem Date-Objekt kann man das Datum nach lokaler- (vom eigenen Rechner) oder nach Weltzeit abfragen.
Zuerst muß eine Instanz des Date-Objekts erzeugt werden.
datum = new Date();
Dann kann man mit verschiedenen Methoden Tage, Monate, Jahre, Wochentage und vieles mehr abfragen.
now = (datum.getDay());
Die verschiedenen Methoden sind in der Flash Hilfe aufgelistet.
Eine ausführlich erklärte Anleitung, wobei man beispielsweise zu jedem Wochentag einen anderen Keyframe aufruft, findet ihr in meiner Beispieldatei date.fla

Text aus einer externen Datei laden (Beispiel Fla Datei downloaden) texteinbinden.fla (text.txt, text1.as, text2.as, text3.as)

Es gibt zwei Möglichkeite Text aus einer externen Datei zu laden.
1.Möglichkeit
Einmal über die Aktion #include="text.as" Dabei wird ASCII Text der mit der Endung as abgepeichert wird in ein Textfeld geladen.
Das Textfeld bekommt in den Textoptionen folgenden Einstellungen:

  • dynamic text
  • multiline
  • wordwrap
  • Html aktiviert (Flash 5 kann html 1 lesen) will man auf Schriftformatierungen verzichten läßt man html deaktiviert
  • Variable Name vergeben, der Name steht in der Textdatei am Anfang gefolgt von einem Gleichheitszeichen, der Text selber wird in Anführungszeichen eingeschlossen.

Des weiteren darf der Text in der Textdatei keine Zeilenumbrüche und keine Anführungszeichen haben. Die Anführungszeichen aus Html Tags müssen mit der suchen ersetzen Funktion des Texteditors in einfache Anführungszeichen ersetzt werden.
Es besteht die Möglichkeit in diese as Datei Aktionen zu schreiben, die im Flash Movie ausgeführt werden.
2.Möglichkeit
Eine andere Möglichkeit ist den Text über loadVariablesNum ("Text.txt", 0); Dabei ersetzt der geladene Text eventuell vorhandenen Text. Die Schriftformatierungen des Textfeldes werden übernommen.
einzulesen. Der Text wird in einer Textdatei mit Endung txt abgelegt. Am Anfang steht der Variablenname des Textfeldes gefolgt von einem Gleichheitszeichen. Die Leerzeichen des Textes müssen durch + Zeichen ersetzt werden. Weitere Textfelder werden mit dem kaufmännischem & verbunen z.B.: text1=...... &text2=... etc. Dabei sind in diesem Fall text1 und text2 die Variablennamen der Textfelder. Weitere Textoptionen sind:

  • Texteingabe
  • eineZeile
  • Variablenname vergeben

 

 


D o w n l o a d    h i e r    k l i c k e n
   
Forum Download
Bitte schickt mir keine Fragen per email, sondern benutzt das Forum. Ich weiß längst nicht auf alle Fragen eine Antwort und außerdem können im Forum auch andere von den Antworten profitieren. Auf der Download Seite könnt ihr euch das Flash Tutorial sowie eine Menge fla Dateien runterladen. Gerade bei schwierigen Sachverhalten sagt eine fla oft mehr als tausend Worte.
   

© Michael Albers
h t t p : / / w w w . p a s t o r p i x e l . d e



m a i l @ p a s t o r p i x e l . d e

| meine Flash Seite |

Go to and Play in Frieden.

zum Anfang  zum Urgrund des Seins, nach oben zu den unendlichen Weiten des Universums, wo Captain Picard und Data sich Gute Nacht sagen...



Datenschutzerklärung