Programmation ActionScript/Applications

ActionScript
Applications
Applications
Sommaire
Modifier ce modèle

Quelques exemples en ActionScript 2

modifier

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 3

modifier

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 1

modifier

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 2

modifier

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);
        }
     }
  }