ActionScript/Première Application
Le traditionnel "Bonjour le monde"
[modifier | modifier le wikicode]Première Application, sans rien comprendre !
[modifier | modifier le wikicode]Au démarrage de Flash, vous trouverez, au centre de votre écran la page d'accueil de flash. Dans celle-ci, sélectionnez Fichier Flash (AS 3.0). Normalement, il est apparu différents panneaux :
- En haut le panneau Scénario
- En bas le panneau Propriétés s'est dégrisé.
Le but de ce cours n'étant pas de vous présenter l'IDE Flash dans ses moindres détails je vous présenterai l'essentiel, dont on se resservira en Actionscript.
Vous verrez aussi un rectangle blanc au milieu, pour votre culture générale, sachez qu'on nomme ceci la scène.
Et que c’est là-dedans que se déroulera votre animation, alors prenez-en grand soin !
Bon je parle, je parle mais vous n'avez rien fait encore alors tous à vos claviers et Let's go! :
- Dans le panneau propriétés en bas de votre écran, vous devriez voir un champ Classe du document, remplissez le et mettez un test, il s'agit en fait du nom de classe qui sera appelée à la compilation. Normalement une boîte de dialogue s'affiche vous indiquant que Flash ne trouve pas la définition de classe et qu’il en générera une à la compilation. Nous arrangerons ça dans quelques instants vous verrez...
- Allez dans fichier puis nouveau
- Dans la boîte de dialogue s'affichant, sélectionnez Fichier ActionScript
- Et là c’est le drame, votre scène que vous chérissiez disparait (malheur de malheur tu nous avait pourtant dit d’en prendre soin!). Rassurez-vous tout est normal
et sous contrôle. À la place vous voyez aussi un truc blanc mais qui prend toutes la place ! avec une bande bleue à gauche vous voici arriver dans l'éditeur de texte de Flash ! (l'endroit où vous passerez certainement le plus de temps donc chérissez-le aussi !) - et maintenant vous allez gentiment faire un copié-collé de ceci :
package
{
import flash.display.MovieClip;
public class test extends MovieClip
{
public function test ():void
{
trace('Bonjour le monde!'); // le traditionnel !
}
}
}
Enregistrez ce fichier et votre scène dans le même dossier mettez le nom que vous voulez pour votre scène par contre votre fichier actionscript, votre (.as) enregistrez le sous test.as Bon, c’est presque terminé il reste juste à spécifier à Flash que vous voulez récupérer des classes dans le dossier dans lequel vous avez enregistrez vos deux fichiers !Vous vous rappelez en 1 je vous avez dit que Flash ne trouvait pas votre classe et qu’il en générerait une à la compilation ?
Et bien c’est maintenant que l’on va lui dire où la chercher ! Attention, tous à vos claviers !, enfin surtout à vos souris :p !
- Allez dans le menu Modifier puis Préférences, une boîte de dialogue s'affiche.
- Dans cette boîte de dialogue, il y a une liste de différents 'onglets' à gauche, sélectionnez ActionScript, la page change
- Tout en bas de la nouvelle page, sélectionnez Paramètres d'ActionScript 3.0..., une boîte de dialogue s'affiche.
- Appuyez sur le + puis sur la cible, sélectionnez alors le répertoire dans lequel vous avez enregistré vos deux fichiers (la scène(.fla) et votre fichier test.as)
Une fois cela fait, vous pouvez tout fermer, en cliquant sur les Ok successifs (deux normalement) ! Vous êtes prêt ? Maintenant allez dans le Menu Contrôle puis Tester l'animation. (Pour les adeptes du clavier vous pouvez aussi appuyer sur les touches ctrl+entrée ) Normalement vous voyez apparaître votre scène blanche, mais surprise, le panneau d’en bas a affiché quelque chose : 'Bonjour le monde!'. Il s'agit en fait du panneau sortie ce sera votre débuggeur !
Et voilà vous venez de réaliser votre première application en ActionScript 3.0, si c’est pas mimi ça ?
Quelques Explications
[modifier | modifier le wikicode]Ici, je vais vous expliquer un peu le code présent dans votre fichier test.as
L'instruction package est en quelque sorte un grand sac où vous mettrez vos classes, celles-ci devront être seules par fichier et si vous donnez un nom à votre package, vous devrez faire deux choses :
- Appelez votre classe nom_du_package.nom_de_la_classe au lieu du simple nom_de_la_classe
- Enregistrez toutes vos classes présentes dans un package dans un même dossier portant le nom du package comme nom
Si vous ne comprenez pas tout, rassurez-vous ça viendra avec le temps ! Bon prêt pour un nouveau bout de code ?
Là c’est tout simple, nous importons la classe qui nous intéresse, vous pouvez d'ailleurs remarquer ici un embriquement depackage et de classes :
- En premier, vous avez le package flash
- En second, le package display contenu dans le package flash
- En dernier le nom de votre classe MovieClip, contenue dans le package display lui-même contenu dans le package flash
Mais vous vous demandez surement pourquoi nous-intéresse telle tant cette classe MovieClip ?
Et bien sachez qu’il va pour le savoir que vous lisiez la suite (olala, le suspens, ous inquietez pas c’est sur les 5 — 6 lignes suivantes que vous trouverez la solution !)
Alors là, c’est ma mogne la plus complexe, nous allons donc la décomposer !
Ceci est un petit mot signifiant que notre classe est accessible de partout du moment qu'on la importée !.
Là on utilise le mot-clé class pour dire au compilateur de nous créer une nouvelle classe, si vous ne connaissez rien au langage Orienté Objet, je vous conseille fortement de vous y familiariser avant de continuer ce cours.
Et ça, ça veut tout simplement dire que notre classe aura les mêmes propriétés et méthodes que la classe MovieClip qu'on a importée tout à l’heure. Techniquement parlant, on appelle cela l'héritage : notre classe hérite de la classe MovieClip toutes ses propriétés et méthodes ! (ce qui fait beaucoup pour notre petite classe d'ailleurs :^) )
il ne reste plus qu'une instruction :
package
{
import flash.display.MovieClip;
public class test extends MovieClip
{
public function test ():void
{
trace('Bonjour le monde!'); // le traditionnel !
}
}
}
La fonction trace() dit juste au compilateur d'écrire dans le panneau sortie le contenu qui lui est envoyé, nous nous avons envoyé Bonjour le monde à la fonction trace() Donc le compilateur écrit Bonjour le monde dans le panneau sortie !
Bon, je crois que vous êtes prêt pour rentrer plus profondément dans Actionscript, source inépuisable de problèmes, de casse-tête et de pleins de trucs bien complexes ! (Nan, nan vous découragez pas !, je disais ça pour vous faire flipper !)
Vous voulez un Bonjour le monde plus joli ? allez faire un petit tour dans les annexes pour un Bonjour le monde graphique !