Programmation ActionScript/Applications

ActionScript
Applications
Sommaire
Modifier ce modèle

Quelques exemples en ActionScript 2Modifier

En ActionScript 2 le code est partout codé en procédural dans les actions de flash.

  // on crée un objet textfield greet, depth 0, position (0,0), width 100, height 100
  createTextField("greet", 0, 0, 0, 100, 100); 
  greet.text = "Hello, world"; // on donne le texte helloworld à l'objet greet

Il existe une exception lorsque l'on fait une classe externe comme ici :

//Ce code doit être écrit dans un fichier séparé nommé Greeter.as
class com.example.Greeter extends MovieClip
{
    public function Greeter()
    {
        var txtHello:TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100);
        txtHello.text = "Hello, world";
    }
}

Quelques exemples en ActionScript 3Modifier

En ActionScript 3, le code objet est inclus dans des fichiers séparés .as. De plus, tout ce qui n'est pas dans les actions du timeline est orienté objet, c'est à dire que le corps du code doit être inclus dans un package et une classe.

Dans les actions, on peut coder en procédural comme en ActionScript 2.

Exemple 1Modifier

Dans cet exemple on affiche un cercle sur la scène.

package  {

   import flash.display.Sprite;

   public class CercleRempli extends Sprite {

       function CercleRempli():void {

         var cercle:Sprite = new Sprite();  // on cree le nouveau cercle
         cercle.graphics.beginFill(0xFF0000); // on commence le remplissage de la forme
         cercle.graphics.drawCircle(50, 50, 30);  // on dessine le cercle
         cercle.graphics.endFill(); // on fini le remplissage

         addChild(cercle); // on ajoute le cercle sur la scene

       }
    }
 }

Exemple 2Modifier

Dans cet exemple on réalise une messageBox.

package  {

    import flash.display.Sprite;
    import flash.text.TextField;
 
    public class MessageBox extends Sprite {
    
        function MessageBox():void {

         var msgbox:Sprite = new Sprite();

          // on dessine le rectangle
          msgbox.graphics.beginFill(0xFFFFFF); // en blanc
          msgbox.graphics.drawRect(0,0,300,20); // x, y, width, height
          msgbox.graphics.endFill();
 
          // on dessine un bord noir
          msgbox.graphics.lineStyle(2, 0x000000, 100);  // epaisseur, couleur, opacité
          msgbox.graphics.drawRect(0,0,300,20); // x, y, width, height
        
          var textfield:TextField = new TextField();
          textfield.text = "Bonjour à vous!";

          // on les ajoute à la scène
          addChild(msgbox);
          addChild(textfield);
        }
     }
  }