Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Programmation > ActionScript / Flash / Flex > Compilez l'AS3 gratuitement et légalement sous Windows/Linux > Lecture du tutoriel

Compilez l'AS3 gratuitement et légalement sous Windows/Linux

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteur : neamar
Note : 17 / 20 (5 votes)
Visualisations : 11 976

Plus d'informations Plus d'informations
Bonjour amis Zéros !
Dans ce tutorial, nous allons parler de Flash...
Ce tutorial ne vous apprendra pas à utiliser l'ACTIONSCRIPT ! (le langage de Flash)
Il vous permettra juste à faire du flash haut niveau de façon multiplateforme et gratuite.
A la rigueur, si vous utilisez l'IDE, vous pouvez commencer à lire à partir de la quatrième partie, dans un souci d'optimisation de votre code. (résultats (quasi) garantis)...

Dans quels cas ce logiciel me sera utile ?

Ce mini-tuto est fait pour vous...

Quelques exemples de ce que vous serez capable de faire après avoir lu ce tutorial : Des exemples de réalisations avec mxmlc en AS3 only

Sommaire du tutoriel :
Icône du chapitre

Télécharger le compilateur

Même si l'IDE d'Adobe est payant (et beaucoup trop cher pour un particulier comme vous et moi), il existe un logiciel gratuit appelé Flex SDK, développé par Macromedia (l'ancien possesseur de Flash, racheté depuis par Adobe), qui possède un compilateur AS3 performant (en fait, c'est le compilateur standard pour l'AS3 ;) ).

Depuis le début, je ne parle que de l'Action Script 3, mais il est bien sûr évident que ce compilateur peut aussi gérer l'AS2 ! (et même quelques autres langages, qu'il utilise dans les compilations avancées, mais nous n'en parlerons pas !)


Dans ce tutorial, nous n'allons pas nous intéresser aux capacités de Flex SDK, mais uniquement à son compilateur.
Pour commencer, il va donc falloir télécharger ce compilateur dont je vous parle depuis dix minutes...
Vous le trouverez ici :

Flex_sdk_3.zip
(vous devez accepter les conditions d'Adobe)
(vous aurez besoin d'avoir Java installé.)


Citation : Conditions du Flex SDK

The Adobe® Flex™ 3 Software Development Kit (SDK) includes the Flex framework (component class library) and Flex compiler, enabling you to freely develop and deploy Flex applications using an IDE of your choice.


Une fois téléchargé, décompressez le tout dans un dossier quelconque... et voilà, vous en avez fini avec l'installation ! Vous avouerez que ce n'était pas très compliqué... la mauvaise nouvelle, c'est que ça ne va pas tarder à le devenir (compliqué, vous me suivez ?) !

Utiliser le compilateur

Vous êtes maintenant en possession d'un superbe compilateur tout beau tout neuf, mais vous ne savez pas comment l'utiliser ! :lol:
Pas de chance, je n'en ai aucune idée moi non plus. Au revoir donc !
Ce compilateur s'utilise en ligne de commande. Non non ! Ne partez pas tout de suite... Les vieux de la vieille de Windows se souviennent surement de la console. Il va y avoir des retrouvailles émues !
Quant à ceux qui utilisent Linux, des présentations ne s'imposent même pas, je crois !

Euh... comment je fais pour ouvrir la console ?



Vous avez maintenant devant vous une superbe console :-° ... il va falloir se déplacer jusqu'au dossier bin du dossier que vous venez de télécharger.
Pour cela, il faut utiliser la commande cd ("Change Directory"), qui permet de se déplacer dans l'arborescence du disque dur.
Dans mon cas, le dossier se situe presque à la racine...
Vous pouvez aussi indiquer directement le chemin absolu : C:\Users\Neamar\Flex SDK 3\bin dans cet exemple.





Attention aux caractères d'échappements ! Sous Windows, il faut mettre le nom du dossier entre ' " ', sous Linux il faut utiliser un \ devant les espaces.

ASTUCE : Vous pouvez appuyer sur Tabulation lorsque vous avez commencé à marquer le nom (Flex par exemple) pour que votre OS complète automatiquement le chemin du dossier.


En résumé, vous disposez maintenant d'un compilateur prêt à fonctionner... alors, qu'est ce qu'on attend pour continuer ?

Votre premier SWF libre !

Afin de ne pas jongler avec les OS, les manipulations qui suivent seront effectuées sous Windows.
Pas d'inquiétude : la marche à suivre est exactement la même sous Linux !


Pour cette partie, nous allons utiliser un fichier .as de test. Il n'a qu'une seule utilité : servir de test.
Afin que tout le monde soit d'accord, je vous donne ce fichier pour que vous puissiez faire des tests.
N'essayez pas encore de compiler un de vos anciens codes sources réalisés avec l'IDE ! Le nombre d'erreurs vous ferait pleurer, on en reparlera dans la prochaine sous-partie !
Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package
{
    //Ne vous occupez pas de cette partie, je détaillerai plus tard
    import flash.ui.Mouse;
 
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.events.Event;
 
    //Le code
    public class souris extends Sprite
        {
        var curseur:Sprite = new Sprite();
        function souris():void
                {
                        var Map:Array = new Array();
                        var niveau:Sprite = new Sprite();
                        
                        niveau.graphics.beginFill(0xFF0000,0.5);
                        niveau.graphics.drawRect(0,0,640,480);
                        stage.addChild(niveau);
                        niveau.addEventListener(MouseEvent.MOUSE_MOVE,SourisBouge);
                        curseur.graphics.beginFill(0x00FF00,0.5);
                        curseur.graphics.drawRect(0,0,20,20);
                        niveau.addChild(curseur);
                        
                }
                
                function SourisBouge(evt:Event):void
                {//Quand la souris bouge, déplacer curseur
                        curseur.x=mouseX-10;
                        curseur.y=mouseY-10;
                }
        }
}


N'oubliez pas que vous devrez recompiler après chaque modification d'un des fichiers composant votre application ! Au début, il vous arrivera souvent d'oublier cette étape...(et n'oubliez pas d'enregistrer avec ctrl-S !)


Enregistrez ce fichier (nommez-le souris.as) dans un dossier "Sources" du répertoire bin.
Le but de ce code est très simple : créer un fond rougeâtre, et un carré vert qui suit la souris. Ne vous attardez pas sur le code, qui diffère surement de ce que vous connaissez dans votre IDE : on reparlera de tout ça plus tard !

Dans votre console, marquez la ligne suivante :

Code : Console
mxmlc "Sources/souris.as"

Sous linux, vous aurez peut-être besoin de rajouter bash : (et d'enlever les guillemets)

Code : Console
bash mxmlc Sources/souris.as

Appuyez sur Entrée... :magicien:

Image utilisateur


Regardez dans votre dossier Source : un fichier souris.swf s'est créé ! Miracle :soleil: !
Vous pouvez le lancer : il réagira comme n'importe quel swf, mis à part que vous n'avez pas déboursé 800? !

Le SWF créé à une hauteur/largeur infinie !
Vous pouvez remédier à ce problème en ajoutant des paramètres de compilation avant la ligne 11 ("public class souris extends Sprite", juste après les import).
Le plus souvent, vous utiliserez ces paramètres :
[SWF(width="640", height="480", frameRate=24)]
(dans ce cas, j'en ai profité pour spécifier un framerate. Les valeurs de width et height sont données en pixels).
(une liste des paramètres de compilation est disponible içi, ou une version simplifiée en français)


L'étape suivante ne sera pas forcément la plus drôle : je vous expliquerai comment modifier vos anciens codes pour les rendre compatibles avec ce compilateur. Même si aucune modification de fond n'est nécessaire (mis à part quelques rares cas, comme les interpolations complexes), cette tâche ne sera pas forcément drôle, voire même particulièrement emmerdbêtante ! Mais pas de soucis ! Je reste ici pour vous expliquer :lol: !

Correction des bugs et optimisations du code source

Cette partie intéressera aussi les heureux propriétaires de l'IDE !


1. Le point-virgule



Commençons par les choses simples : toutes vos instructions doivent se terminer par un point-virgule. Dans beaucoup de cas, le compilateur ne rechignera pas si vous ne mettez pas de point virgule, mais le jour où un problème arrivera, l'erreur renvoyée ne sera pas forcément claire. Alors, prenez tout de suite les bonnes habitudes : toutes les instructions se terminent par un point-virgule !

2. Le typage



Cette opération est primordiale quel que soit le langage utilisé, mais l'IDE d'Adobe est assez (beaucoup trop à mon gout) laxiste sur ce point.

Typage : A quoi ça sert ?



Le typage, qu'est-ce que c'est ? C'est tout simplement donner un type à une variable.
Par exemple, c'est dire "Toi, tu es une variable qui contient forcément un chiffre, je vais donc indiquer à l'ordinateur que tu n'es autorisée à ne recevoir que des chiffres".
A première vue, ça peut paraitre inutile et évident. Détrompez-vous ! Le typage évite beaucoup d'erreurs. Ainsi, si vous essayez de mettre une chaine de caractères dans une variable numérique, le compilateur vous en avertira, alors que sans typage, la compilation s'effectuerait sans problème. Sauf que quand vous lancerez le fichier, l'ordinateur pourra être appelé à faire des calculs bizarres, comme sinus(2*"Bonjour"+3.1415). Personnellement, je ne sais pas faire ce type de calcul :p ...Le problème, c'est que l'ordinateur non plus n'en a aucune idée : il y aura donc erreur, et bugs sur tous les appels de cette variable//fonction. Pas cool !

En plus, en typant vos variables, l'ordinateur sait dès le début que telle variable ne contiendra que des chiffres : il n'aura donc pas besoin de faire des changements de type complexes ! C'est tout bénéf' pour la rapidité/propreté de votre code.

Je ne m'attarde pas trop sur ce sujet, un superbe tutorial est disponible sur le Site du Zéro ;) .

Comment typer en AS ?


Vous devez typer vos variables et vos fonctions.
Pour les variables, cela implique qu'il faut aussi les déclarer !
Quelques exemples de typage de variables :
Code : Actionscript
1
2
3
4
5
6
7
8
9
//Exemples corrects :
var MonNombre:uint=15;  //Un nombre normal !
var MonString:String="Tuto"; //Une chaine de caractère
var niveau:Sprite = new Sprite();  //Un type un peu plus complexe : le sprite
var MonString2:String="126"; //Le nombre est entouré de guillemets : il est donc considéré comme une chaine de caractère
 
//Exemples incorrects :
var MonNombre:uint="Tot"; //le compilateur renverra : C:\Users\Neamar\Flex SDK 3\bin\Sources\souris.as(18): col: 25 Error: Contrainte implicite d'une valeur du type int vers un type sans rapport String.
var MonString:String=126; //Une chaine de caractère

Il y a une multitude de types : Array, MovieClip, Point, Line... j'en passe, regardez la documentation AS3 !

En plus des variables, vous devez aussi typer vos fonctions ! Dès que vous utilisez l'instruction return, votre fonction a un type : celui de la variable retournée ! Le type s'indique de la même façon que pour les variables : "Nom_De_La_Fonction(parametre:type_parametre):[type]"
Si une fonction ne renvoie rien (on parle alors de procédure), vous devez quand même la typer : puisque votre fonction ne renvoie rien, elle sera de type void, ce qui signifie néant en anglais.

Des exemples ?
Code : Actionscript
1
2
3
4
5
6
7
8
9
function SourisBouge(evt:MouseEvent):void //Pas de return : on marque donc void
{
        //La suite de la fonction
}
 
function Addition(nb1:uint,nb2:uint):uint //Les paramètres aussi doivent êtres signés
{
        return nb1+nb2; //L'addition de deux nombres donne un nombre : on peut donc utiliser uint
}

Il existe aussi le type étoile, qui type une variable n'importe comment : var i:* : i peut alors contenir un objet, un long, un string...
Essayez de le bannir au maximum, normalement vous n'en aurez jamais besoin.

3. Les packages



Voilà le point qui fâche...
Qu'est-ce qu'un package ? Il s'agit d'un ensemble de fichiers qui contiennent les définitions de certaines fonctions.

Lorsque vous compilez manuellement, vous devez inclure les packages que vous utilisez.
Regardez le code de souris.as :

Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
package
{
    import flash.ui.Mouse;
 
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.events.Event;
 
    public class souris extends Sprite
        {
                [...]
        }
}

Je vais donc vous parler de ces import.
En soi, rien de bien complexe : si vous utilisez des évènements de la souris (MouseEvent.MOUSE_MOVE, par exemple), vous devez inclure flash.events.MouseEvent.
Si vous utilisez des Sprites, vous devrez marquer import flash.display.Sprite...et ainsi de suite.
Mais... comment je fais pour trouver le bon package ?

A priori, ce n'est pas compliqué, le seul problème étant de trouver le package quand l'instruction n'a pas un nom en rapport.
Une petite étude de cas ?
Citation : Vous
Je veux cacher mon curseur de souris avec la méthode hide(). Quand je compile, j'obtiens une erreur : j'ai donc besoin d'inclure un package... mais lequel ?
Après avoir farfouillé dans l'aide de Flash, je découvre une catégorie Mouse qui semble intéressante. Encore deux trois liens, et hop ! flash.ui.Mouse.C'est exactement ce qu'il me fallait ! Je n'ai plus qu'à inclure le package...


Comme vous le voyez, ça reste très artisanal : l'aide de Flash sera indispensable dans votre recherche de packages.

Une petite astuce : inclure les packages est une tâche longue, fastidieuse et peu gratifiante. Vous pouvez vous éviter du travail avec l'opérateur * : il inclue toutes les sous-classes indiquées.
Ainsi, import flash.events.* est équivalent à import flash.events.MouseEvent ET import flash.events.Event.
Parfait, me direz-vous ? Surement pas ! Car en procédant, ainsi, vous incluez aussi une myriade d'objets Event (la liste). Et il est très peu probable que vous ayez besoin d'inclure tous ces objets !
Au bilan, en utilisant cette méthode, vous vous simplifiez la vie dans une certaine mesure, mais vous alourdissez inutilement la mémoire de l'ordinateur qui fera tourner votre application. En plus, son temps d'exécution sera moins bon, puisque des écouteurs seront lancés ! Pas si génial, n'est-ce-pas ?


4. Les formes



Quand vous utilisiez l'IDE, vous avez surement pris l'habitude d'utiliser en permanence l'outil de dessin vectoriel ? Dans ce cas-là, j'ai deux nouvelles pour vous : une bonne et une mauvaise. Je commence par laquelle ? Allez, la mauvaise !
La mauvaise nouvelle, c'est que cette option n'est pas disponible avec ce compilateur. Il vous sera donc impossible de redessiner vos superbes vaguelettes à la souris...
La bonne nouvelle, c'est que tout n'est pas perdu ! Regardez le code source de souris.as :
Code : Actionscript
1
2
3
curseur.graphics.beginFill(0x00FF00,0.5);
curseur.graphics.drawRect(0,0,20,20);
niveau.addChild(curseur);

Comme vous voyez, ce que vous faisiez à la main est faisable en code ! Fini le WYSIWYG, bienvenue au code !

C'est là l'inconvénient majeur de ce compilateur : alors que l'IDE de Flash est complètement orienté vers le graphisme, ce compilateur est beaucoup plus tourné vers le code. Au final, ça revient au même, puisque l'IDE se contente de transformer de façon transparente vos formes en code, mais pour vous, c'est beaucoup plus lourd. Impossible de développer une superbe application graphique en quelques minutes !
Il reste cependant possible d'utiliser un IDE libre sur le net pour le dessin vectoriel...il suffit après d'exporter vos créations en swc et des les inclure dans les options de compilation.


5. La TimeLine



Je crains d'avoir encore une mauvaise nouvelle à vous annoncer !
Malgré de nombreuses recherches, je n'ai pas trouvé comment créer une frame en code. Et il semble admis sur les forums que les frames n'existent pas dans Flex. Bilan : vous allez devoir faire une croix sur cette Timeline.
Attendez ! Ne partez pas...réfléchissons ensemble : quel est l'intérêt de ces frames ?


Cet abandon des frames aura un rebondissement inattendu sur vos codes : vous pouvez en finir avec les MovieClip ! Car après tout, la seule distinction entre un MovieClip et un Sprite, c'est cette Timeline ! Mieux vaut utiliser un Sprite dont vous modifierez l'animation quand le besoin s'en fait sentir. Ainsi, vous pouvez faire l'économie de tous ces MovieClip, au profit de Sprites. Optimisation, quand tu nous tiens....
Plus d'infos : MovieClip est mort. Buvez du Sprite

Citation : L'aide de Flash
"vous obtiendrez des performances nettement supérieures en utilisant Shape plutôt que Sprite ou MovieClip"

Si vous avez besoin d'un objet qui sera le conteneur d'autres objets d'affichage (que vous ayez ou non l'intention de dessiner en ActionScript dans cet objet), choisissez l'une des sous-classes de DisplayObjectContainer :

* Sprite si l'objet doit être créé en ActionScript uniquement, ou servira de classe de base à un objet d'affichage qui sera uniquement créé et manipulé en ActionScript,
* MovieClip si vous créez une variable pour pointer sur un symbole de clip créé dans Flash.



Ça y est, vos anciens codes sources devraient se compiler.
Ah non ! Il vous manque encore une notion...

6. Enchâssez-moi tout ça !



Votre code source doit être contenu dans une classe.
Voilà donc la structure standard d'un fichier .as :
Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
package
{
    //les importations de package

    public class [NOM_DU_PROGRAMME] extends Sprite
    {
                //Variables publiques
        function [NOM_DU_PROGRAMME]():void
                {
                                //Le constructeur principal, qui est appelé au démarrage du programme. En simplifiant, on pourrait dire qu'il est l'équivalent de la fonction main en C/C++
                }
                
                function MaFonction1(Parametre1:Type,Parametre2:Type):Type
                {
                        //Les fonctions annexes
                }

        }
}

IMPORTANT : Les noms de la classe et de la fonction de départ doivent être les mêmes que le nom du fichier. Si votre fichier s'appelle anticonstitutionnellement.as, votre classe devra comporter public class anticonstitutionnellement extends Sprite !


Mais ! C'est moche ! Toutes les fonctions dans le même fichier ? Ça va être un sacré bordel !

Qui a dit que vous deviez tout mettre dans le même fichier ? Ah oui ! Moi :-° ... oubliez ça alors !
Vous pouvez parfaitement créer des fichiers annexes qui contiennent des fonctions.
Ainsi, rien ne vous empêche de créer un fichier Evenements.as, Graphisme.as , Calculs.as...
Une fois crées, vous pouvez les inclure très facilement, en utilisant la fonction include dans la fonction de départ.

Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
public class Editeur extends Sprite {
        function Editeur():void {
            include "Trace.as";
            include "Place.as"
            Place_Cible = DeleteCursor

            include "Editeur_Graphics.as";
            include "HitTesteur.as";
            var i:uint,j:uint;
...



Ça y est !
Vous en avez fini avec cette sous-partie assez longue, je dois l'avouer ! (mes doigts fument encore d'avoir tapoté le clavier sans rémission).
Allez courage, plus que quelques lignes et c'est terminé !

La fonction Trace

Trace, vous connaissez ? Elle permet un débuggage débogage (parait qu'en français, ça s'écrit comme ça, moi je suis pas compliqué :D !), bref, cette fonction permet d'enlever facilement certains bugs de votre application.

Malheureusement, il s'agit d'un des ajouts de l'IDE. Pas d'IDE, pas de Trace !

Pas de panique ! Rien ne vous empêche de recréer une fonction trace, voire même d'améliorer l'ancienne.
Personnellement, j'utilise cette fonction : (inspirée du travail de Kisscoool).
D'un point de vue théorique, il serait plus propre de passer tout cela dans une classe statique. En effet, là il faut l'importer dans une classe qui utilise les packages sprites (ce qui arrive souvent :) ) et TextField (plus rare).



Pour l'utiliser, il vous suffit d'inclure le fichier trace.as...comme vous venez d'apprendre à le faire !

Cette fonction n'est pas aussi parfaite que celle inclue dans l'IDE : elle ne gère pas l'affichage des tableaux, par exemple. Vous êtes donc obligé de passer par un for each...


(Je le mets en secret pour ne pas prendre trop de place)
Secret (cliquez pour afficher)

Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
var Trace_Main:Sprite = new Sprite();//Le conteneur principal
Trace_Main.addEventListener(MouseEvent.MOUSE_DOWN, Trace_StartDrag);
Trace_Main.scaleX=Trace_Main.scaleY=Trace_Main.alpha=.7;
addChild(Trace_Main);

var Trace_Texte:TextField=new TextField();
Trace_Texte.x = 5;
Trace_Texte.y = 5;
Trace_Texte.autoSize = "left";
Trace_Main.addChild(Trace_Texte);

var Trace_Reduire:Sprite = new Sprite();
Trace_Reduire.graphics.beginFill(0xFFFFFF,1);
Trace_Reduire.graphics.drawRect(0,0,10,10);
Trace_Reduire.addEventListener(MouseEvent.MOUSE_UP, Trace_Reduire_fct);
Trace_Main.addChild(Trace_Reduire);

function Trace(txt:String):void
{//La fonction principale, qui trace le texte passé en paramètre.
    Trace_Texte.text = txt + "\r" + Trace_Texte.text;//\r indique un retour à la ligne.
	setChildIndex(Trace_Main,numChildren-1);
}

//Les fonctions pour déplacer
function Trace_StartDrag(e:Event):void
{
    Trace_Main.startDrag();
    Trace_Main.addEventListener(MouseEvent.MOUSE_UP, Trace_StopDrag);
    Trace_Main.removeEventListener(MouseEvent.MOUSE_DOWN, Trace_StartDrag);
    Trace_Texte.selectable=false;
}
function Trace_StopDrag(e:Event):void
{
    Trace_Main.stopDrag();
    Trace_Main.removeEventListener(MouseEvent.MOUSE_UP, Trace_StopDrag);
    Trace_Main.addEventListener(MouseEvent.MOUSE_DOWN, Trace_StartDrag);
    Trace_Texte.selectable=true;
}

//Et pour supprimer la boite :
function Trace_Reduire_fct(e:Event):void
{
	Trace_Main.visible=false;
	Trace_Reduire.removeEventListener(MouseEvent.MOUSE_UP, Trace_Reduire_fct);
	Trace_Main.removeEventListener(MouseEvent.MOUSE_DOWN, Trace_StartDrag);
	Trace_Main.removeEventListener(MouseEvent.MOUSE_UP, Trace_StopDrag);
	Trace_Main=null;
	Trace_Texte=null;
}


Q.C.M.

Pourquoi le code suivant ne compile-t-il pas mon fichier (sous Linux)?

Code : Console
mxmlc Sources/Souris.as
Pourquoi le code suivant est compilable mais invalide ?

Code : Actionscript
1
2
3
4
5
var Map:Array = new Array()
var niveau:Sprite = new Sprite()
niveau.graphics.beginFill(0xFF0000,0.5)
niveau.graphics.drawRect(0,0,640,480)
stage.addChild(niveau)
Quel est le résultat de ce code ?
Code : Actionscript
1
2
var MonNombre:String=15;
MonNombre=2*MonNombre;
Code : Actionscript
1
2
3
4
function SourisBouge(evt:Event):void
{
        return MouseX;
}

Ce code est :
Ou est le problème ?
Code : Actionscript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
package
{
    //[on considère que les import sont correctement réalisés]
    public class MonCode extends Sprite
        {
        function souris():void
                {
                        var niveau:Sprite = new Sprite();
                        niveau.graphics.beginFill(0xFF0000,0.5);
                        niveau.graphics.drawRect(0,0,640,480);
                        stage.addChild(niveau);
                        
                }
        }
}

Statistiques de réponses au QCM



Ca y est !
Image utilisateur

Vous savez maintenant comment compiler votre application en AS3 de façon gratuite et multiplateforme.
Comme vous l'avez remarqué, le plus dur n'est pas la compilation, mais la rectification des problèmes qui sont normalement gérés par l'IDE.

Si vous avez des questions, ou des suggestions, n'hésitez pas à m'envoyer un MP, ou à participer sur les forums du SDZ.


Et n'hésitez pas non plus à commenter ce tutorial !

Enfin, gardez en tête que les informations affichées içi servent uniquement de base : (c'est un mini-tuto, pas un big tuto !) : les informations données sont donc loin d'être exhaustives.

Pour aller plus loin, quelques liens :


Merci à Kisscoool pour sa relecture et ses conseils attentifs.
Retour en haut Retour en haut


Créé : le 12/04/2008 à 09:19:36
Modifié : le 04/10/2008 à 16:16:09
Avancement : 100%
Licence : Creative Commons BY

L'orthographe, la grammaire et la présentation de ce tutoriel ont été vérifiées par les zCorrecteurs.
19 commentaires

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 166 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.089s (0.0407s)