Forum de discussion
Forum « Flash et Shockwave » (archives)
Re: Puissance des classes AS2
Envoyé: 16 juillet 2004, 12h26 par dada
il suffit de lui passer en paramètre à la construction de la 'classe'.
-----------------------------------
function GrosObjet() {
this.maVariable = 3; // ne pas utiliser de mot clef AS (variable)
this.petit = new petitObjet(this.maVariable);
}
function petitObjet(param) {
this.param = param; // enregistrement de param dans la classe
this.fonction = function() {
trace(this.param);
};
}
gros= new GrosObjet();
gros.petit.fonction();
------------------------------
Si tu veux construire des classes et que tu as FlashMX2004, je me permet de te conseiller d'apprendre à faire des classes en AS2 !
Personellement, j'ai mis un peu de temps à m'y mettre car çà me rebutait un peu. Je m'y suis mis récement et j'ai très vite compris l'intérêt énorme qu'apportait cet AS2 !! Beaucoup plus de facilité dans le codage, une meilleure et plus facile intégration et compréhension du code, etc, etc...
Chaque classe doit être crées dans un fichier as externe. L'aide (F1) donne beaucoup de renseignement sur l'AS2.
Maintenant, je ne peux plus me passer de créer des classes, car c'est d'une facilité déconcertante (une fois qu'on a assimilé les bases) et çà permet vraiment de créer simplement des fonctionnements assez complexes.
Voici un petit exemple avec les classes Petit et Gros:
-------------------
Fichier GROS.as :
-----------------------------------
class GROS {
var Tt:String; // la variable à transmettre à Petit
var P:PETIT; // la future occurence de la classe PETIT (contenue dans l'occurence de GROS)
// CONSTRUCTEUR //
function GROS () {
trace ('Occurence de GROS construite');
}
function CreerPetit (param_Taille) {
P= new PETIT (param_Taille);
return P;
}
}
---------------------------
Fichier PETIT.as :
-----------------------------------
class PETIT {
var T:String; // la taille de petit
// CONSTRUCTEUR //
function PETIT (param_T) {
T= param_T;
trace ('Occurence de PETIT construite');
}
function GetTaille () {
return T;
}
}
-------------------
exploitation dans un fichier .fla placé dans le même répertoire
--------------------------------------
leGros= new GROS ();
lePetit= leGros.CreerPetit ('tres petite');
trace (lePetit.GetTaille());
--------------------------------------
Il y a un peu plus de code dans les fichiers AS car j'ai rajouté 2 fonctions séparées pour plus de clarté (CreerPetit et GetTaille).
MAIS surtout, il y a beaucoup moins de code dans le fichier fla et çà n'est que tu code exécutif, pas de la déclaration et des fonctions à n'en plus finir ! ;-)
L'intérêt de l'AS2, c'est de définir des fonctions et des comportements dans des classes externes puis de simplement les mettre en oeuvre dans le fla. Pour la compréhension, ya pas mieux :-)
Maintenant, même pour faire le truc le plus idiot possible, je commence par faire une classe ;-)
Tu peux en apprendre beaucoup en cherchant dans l'aide : 'class', 'extends', et regarder tout ce qui s'en rapproche.
J'espère en avoir intéressé un ou deux ;-)
++
dada
Réponses
|