2010-08-14 4 views
0

Je suis vraiment nouveau à ActionScript, donc je ne suis même pas sûr de savoir comment demander cela. Tout d'abord je n'utilise pas Adobe IDE juste un bloc-notes avec Flex comme un compilateur. Ce que je veux savoir, c'est comment faire une classe, mais le faire avec des arguments, puis demander à cette classe d'utiliser ces arguments.Actionscript: comment créer une classe qui utilise des arguments (aussi appelés paramètres?) D'une autre classe?

La seule façon de clarifier ce que je veux dire est à travers un exemple. Par exemple, disons que j'ai ma classe principale et une classe appelée carré. Maintenant je pense (et je pourrais me tromper) que je peux "faire" une classe carrée dans la classe principale en disant simplement new square(); dans certaines fonctions de la classe principale. Mais disons que je veux que cette classe de carré ait une valeur x et y. Aurais-je établir cela en disant nouveau carré (x, y); dans la classe principale (où x et y sont des valeurs entières)? Si non comment? Aussi comment pourrais-je obtenir la classe carrée pour lire ces valeurs? Comment pourrais-je obtenir que la classe carrée dessine un carré avec son centre au x, y qui lui est donné dans la classe principale?

+1

Vous savez que vous n'avez pas besoin de créer un nouvel utilisateur pour chaque question qui veulent poser, n'êtes-vous pas? –

Répondre

2

Vous devez spécifier ceux dans le constructeur de classe. Ainsi, par exemple:

Classe Square:

public class Square 
{ 
    //Create two private variables that will hold the width and height of the square 
    private var _width:Number; 
    private var _height:Number; 

    /* 
    This is the class constructor, here we specify what parameters 
    are needed to create an instance of this class 
    */ 
    public function Square(width:Number, height:Number) 
    { 
     _width = width; 
     _height = height; 
    } 

    //Calculate the are of this square 
    public function area():Number 
    { 
     return width * height; 
    } 
} 

Utilisation de la classe carrée

var my_square:Square = new Square(50, 50); 
trace(my_square.area()); 

Est-ce que vous parlez? Si oui, je suggérerais de lire quelques tutoriels d'introduction sur les classes en flash (de préférence en AS3).

Comme: http://www.kirupa.com/developer/as3/classes_as3_pg1.htm

Questions connexes