Hopp til innhold

ActionScript

Fra Wikipedia, den frie encyklopedi

ActionScript er et programmeringsspråk basert på ECMAScript, blir ofte assosiert til scripting i Adobe Flash applikasjoner. Nå i versjon 3.0 har ActionScript revolusjonert flash formatet. som i starten bare ga små mengder med effekt i en flash animasjon men som nå kan i samarbeid med Adobe Flash utgjøre store programmer. Som den dag i dag er en nødvendig komponent i det moderne webdesign.

Applikasjon utviklet ved bruk av Adobe Flash eller Adobe Flex vil ofte bruke ActionScrtipt for å kjøre og manipulasjon av data og annet innhold. Andre plattformer for eksempel ColdFusion også støtter programmering med ActionScript

Historie

ActionScript kom først i sin syntax me lansering i Flash 5, som var den første versjonen av Flash hvor det var mulig å programmere. Den første versjonen av ActionScript ble kalt ActionScript 1.0 . Flash 6 (MX) utvided funksjonene i forhold til programmering i ActionScript. Dette gjorde de ved å legge til litt flere innebygde funksjoner og bedre programmeringskontroller av SWF filmer elementer. Flash 7 (MX 2004) introduserte ActionScript 2.0 som kom med nye funksjoner som klassebasert programmering, og avansert data skriving. Actiontscript 1.0 og 2.0 deler den samme komprisasjonen i Flash SWF filer.

Tidslinje

  • Flash Lite 1.0 og 1.1: Flash Lite er flash teknologien spesielt laget for utvikling for mobil telefoner og andre elektroniske apparater. Flash Lite 1.1 støtter Flash 4 ActionScript.
  • Flash Lite 2.1: la til support for Flash 7 ActionScript 2.0.
  • Flash Player 2: Første versjon med programmering støtte, funksjoner som: gotoAndPlay, gotoAndStop, nextFrame og nextScene for tidslinje kontroller.
  • Flash Player 3: videre funksjoner som for eksempel muligheten til å laste eksterne SWF filmer (loadMovie).
  • Flash Player 4: første spilleren med full støtte for scripting. (calt Actions).
  • Flash Player 5: inkluderer den første versjonen av ActionScript.
  • Flash Player 6: La til event handling model, og support for switch.
  • Flash Player 7: Flash Player 7 tilbyr nye funksjoner som CSS tekst og fremføringen er bedre.
  • Flash Player 8: Støtter nå ActionScript 2.0
  • Flash Player 9 (også kalt 8.5): la til ActionScript 3.0.

Syntax

I ActionScript 2.0 can det være klasser også et bibliotek object (et filmklipp) kan bli assosiert med en klasse. Klasser er vanlig hvis skrevet inni flash IDE filen som en ekstern Actionscript fil; uansett kan de blir programmert også i en vanlig tekst editor; så lenge filen ender med .as edelse. Klasser er utvidelser til ActionScript språket, som programmerern kan skrive selv. Det er også mange innebygde klasser i Flash.


Eksempler

ActionScript 2.0 Eksempel

Den følgende koden skriver Hello world i flash IDE out panel. Noter at dette vil kun fungere inni en flash IDE, som en function bare fungerer inni funksjonen.

 trace ("Hello world!");

Den følgende koden vil skrive Hello world til scenen.

_root.createTextField("myText", 1, 0,0,100,25);
_root.myText.text = "Hello world!";

Den følgende koden skriver ut musen sin posisjon når musen beveges, ved å bruke onMouseMove (når musen beveger seg) eventet. Igjen vil dette bare fungere i Flash IDE

 onMouseMove = function () {
    trace ("X: "+_root._xmouse);
    trace ("Y: "+_root._ymouse);
 };

Når den følgende koden blir skrevet på en knapp, starter den å spille tidslinjen til filmklippet hvor knappen er plasert. Dette er for hoved tidslinjen siden den også er et filmklipp.

 on(release) {
    play();
 }

Dette er et mer avansert eksempel på å lage en array som inneholder tall og tekst, og som skriver et nummer til en variabel kalt num og en tekst steng til en variabel kalt str og bruker en prototype funksjon også deretter bruken filmklippet API, og et text felt blir kjørt/tegnet på skjermen hvor da variabel verdien blir skrevet.

 var myArray:Array = new Array ("Hello", "ActionScript", 3, 7, 11, "Flash");
 Array.prototype.pickNumber = function():Number  {
    var rand:Number = random(this.length);
    return (typeof (this[rand]) == "number") ? this[rand] : this.pickNumber();
 };
 Array.prototype.pickString = function():String  {
    var rand:Number = random(this.length);
    return (typeof (this[rand]) == "string") ? this[rand] : this.pickString();
 };
 var num:Number = myArray.pickNumber();
 var str:String = myArray.pickString();
 _root.createTextField ("txt", 1, 10, 10, 530, 390);
 txt.text = "Array = "+myArray+"\nRandom Number = "+num+"\nRandom String = "+str;

Array eksempel:

 var aData:Array = [{name: "Tord G. Nordahl", age: "20"}, {name: "Alfa Catrin Gangsøy", age: "21"}];
 dataGrid.dataProvider = aData;

ActionScript 3.0 Eksempel

Dette «Hello World»-eksemplet er skrevet i ActionScript 3.0, og viser teksten "Hello World!" i hvitt med en svart skygge, etterfulgt av TextField-objektets pseudo-tilfeldige x- og y-posisjon på scenen, som er generert med Math.random-funksjonen.

 package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.filters.DropShadowFilter;

    public class HelloWorld2 extends Sprite {
       private var shad:DropShadowFilter;
       private var txt:TextField;

       public function HelloWorld2() {
          shad = new DropShadowFilter (2, 45, 0x000000, 25, 3, 3, 2, 2);
          txt = new TextField();
          txt.textColor = 0xFFFFFF;
          txt.filters = [shad];
          txt.width = 120;
          txt.x = Math.random()*300;
          txt.y = Math.random()*300;
          txt.selectable = false;
          txt.text = "Hello World! ["+Math.round(txt.x)+","+Math.round(txt.y)+"]";
          addChild(txt);
       }
    }
 }

Se også

Eksterne lenker