Nous allons animé et interroger les Containers
Si vous avez pris conscience du premier post nommé CS3|AS3 l'importance des Containers, vous êtes donc prêt à prendre conscience de ce post nommé CS3|AS3 l'importance des Containers 2. Une différence aura quand même été apporter sur le source à étudier. Voici donc avant toute chose les modif's apporter à ce source. Il s'agit en fait du même exercice qu'au premier post mais plus complet sur des points d'écritures qui semble important pour tout développeur consciencieux et soucieux du travail bien fait. Aussi ais-je importer les classes essentielle au bon fonctionnement des programmes. Par contre il n'est certe pas obligatoire d'importer des classes quand nous programmons en zone.fla. Ce qui n'est pas le cas lorsque écrivons des classes personnalisés dans un un autre type de fichier. Exemple ? : MaClasse.as [c'est l'extension des scripts de classes]. Aussi ais-je désirez parfaire la définition des variables. Ces variables sont non initialisé au départ de l'écriture du source. Aussi, et pourquoi pas, ais-je ajouter un filtre aux objets visuelles. Ce qui apporte moins de monotonie des aspects esthétiques. Le source en question a été écrit et vérifier avant de le poster pour m'assurer du bon fonctionnement du programme.
Si vous avez pris conscience du premier post nommé CS3|AS3 l'importance des Containers, vous êtes donc prêt à prendre conscience de ce post nommé CS3|AS3 l'importance des Containers 2. Une différence aura quand même été apporter sur le source à étudier. Voici donc avant toute chose les modif's apporter à ce source. Il s'agit en fait du même exercice qu'au premier post mais plus complet sur des points d'écritures qui semble important pour tout développeur consciencieux et soucieux du travail bien fait. Aussi ais-je importer les classes essentielle au bon fonctionnement des programmes. Par contre il n'est certe pas obligatoire d'importer des classes quand nous programmons en zone.fla. Ce qui n'est pas le cas lorsque écrivons des classes personnalisés dans un un autre type de fichier. Exemple ? : MaClasse.as [c'est l'extension des scripts de classes]. Aussi ais-je désirez parfaire la définition des variables. Ces variables sont non initialisé au départ de l'écriture du source. Aussi, et pourquoi pas, ais-je ajouter un filtre aux objets visuelles. Ce qui apporte moins de monotonie des aspects esthétiques. Le source en question a été écrit et vérifier avant de le poster pour m'assurer du bon fonctionnement du programme.
Animation d'une interpolation 100% programme
L'animation est supporter par des évènements. Le premier évènement est une action de l'utilisateur, celui-ci clique sur la forme nommé [s2], celle du bas.
En cliquant sur cette forme un autre évènement sera appeler, cet autre évènement concerne l'animation comme telle. Le but évidemment, est de voir agir les informations, dans le Output Panel. Une amélioration a aussi été apporter en ce qui concerne le tracage [interrogation des Containers], en effet puisque j'en ai fait une fonction nommé traceInfos();. Celui-ci nous éviteras d'écrire plus d'une fois l'interrogation du programme. Nous n'aurons donc qu'à appeler la fonction pour que celle-ci s'exécute.
L'animation est supporter par des évènements. Le premier évènement est une action de l'utilisateur, celui-ci clique sur la forme nommé [s2], celle du bas.
En cliquant sur cette forme un autre évènement sera appeler, cet autre évènement concerne l'animation comme telle. Le but évidemment, est de voir agir les informations, dans le Output Panel. Une amélioration a aussi été apporter en ce qui concerne le tracage [interrogation des Containers], en effet puisque j'en ai fait une fonction nommé traceInfos();. Celui-ci nous éviteras d'écrire plus d'une fois l'interrogation du programme. Nous n'aurons donc qu'à appeler la fonction pour que celle-ci s'exécute.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Toute écriture se doit d'être organisé et planifier. Il est essentielle de connaitre les différentes classes à utiliser lors du développement du programme. Nous commencons donc ici par l'importation de ces classes. Par la suite nous passerons à la définition des variables. Voici donc quelques exemples d'importation.
:: import flash.display.Sprite;
:: import flash.display.Loader;
:: import flash.events.Event;
:: import flash.media.Video;
Si vous désirez exécuté ce source, voici des points importants concernant le stage :
:: Dimension : 800px de large et 350px de haut
:: Background Color : Black.
:: Placer le source au premier keyframe du root.
:: Ctrl + Enter.
:: import flash.display.Sprite;
:: import flash.display.Loader;
:: import flash.events.Event;
:: import flash.media.Video;
Si vous désirez exécuté ce source, voici des points importants concernant le stage :
:: Dimension : 800px de large et 350px de haut
:: Background Color : Black.
:: Placer le source au premier keyframe du root.
:: Ctrl + Enter.
- Code: Tout sélectionner
// -- Importations des classes essentielle pour le bon fonctionnement du projet.
// --
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.filters.BlurFilter;
// --
// -- Définitions des Containers + déclaration des variables
// -- Les containers.
// --
var baseConteneur:Sprite;
var conteneur1:Sprite;
// --
// -- Le visuelle
// --
var s:MovieClip;
var s2:MovieClip;
// --
// -- Un filtre et un array pour rendre esthétique les formes.
var flou:BlurFilter;
var matrice:Array = [];
// --
// -- Construire ses containers + ajout [addChild(objet)]
// --
baseConteneur = new Sprite();
conteneur1 = new Sprite();
addChild(baseConteneur);
baseConteneur.addChild(conteneur1);
baseConteneur.name = 'baseConteneur';
conteneur1.name = 'conteneur1';
// --
// -- Ici on peut interroger son programme mais nous le ferons plus loin dans le prog.
// -- Le Output donnerais 0, 0, 0, 0 pour les deux conteneurs.Si on interroge le prog.
// -- Faisons une fonction de tracage, ainsi nous n'aurons à le réécrire à chaque fois
// -- que nous voudrons interroger le prog, nous n'aurons qu'Ã appeler la fonction.
// --
function traceInfos():void
{
trace(baseConteneur.name + "\n" + baseConteneur.x + " " + baseConteneur.y + " " + baseConteneur.width + " " + baseConteneur.height);
trace(conteneur1.name + "\n" + conteneur1.x + " " + conteneur1.y + " " + conteneur1.width + " " + conteneur1.height);
}
// --
// -- Passons aux éléments visuelles
// -- [n'oublier pas que leurs définitions de variables ont été déclarer plus haut]
// --
s = new MovieClip();
s2 = new MovieClip();
// --
s.graphics.lineStyle(2, 0xFFFFFF, 1); // -- param1 : épaisseur de ligne, param2 : couleur, param3 : alpha.
s.graphics.beginFill(0xFF0000, 1); // -- param1 : couleur, param2 : alpha;
s.graphics.drawRect(10, 10, 780, 30); // -- Le stage a 800px de largeur et 350px de hauteur.
// --
s2.graphics.lineStyle(2, 0xFFFFFF, 1); // -- param1 : épaisseur de ligne, param2 : couleur, param3 : alpha.
s2.graphics.beginFill(0xFF0000, 1); // -- param1 : couleur, param2 : alpha;
s2.graphics.drawRect(10, 45, 780, 30); // -- Le stage a 800px de largeur et 350px de hauteur.
s2.buttonMode = true;
// --
// -- Exécuter le filtre
// -- NOTE IMPORTANTE :
// -- Prenez connaissance que le filtre et les couleurs ont été choisi en fonction
// -- d'un fond noir. D'accord ? moi mon stage est noir.Sans quoi les résultats
// -- semblerons visuellement différent.
// --
flou = new BlurFilter();
flou.blurX = 12;
flou.blurY = 0;
matrice = [flou];
s.filters = matrice;
s2.filters = matrice;
// --
// -- appelle et exécution de la fonction traceInfos();
// --
traceInfos();
// --
// -- Ajoutons nos formes visuelles aux display
// --
conteneur1.addChild(s);
conteneur1.addChild(s2);
// --
// -- appelle et exécution de la fonction traceInfos();
// --
traceInfos();
// --
// --
// -- Animons la deuxième forme [s2] avec une action utilisateur.
// -- Nous utiliserons un écouteur pour ce faire
// --
s2.addEventListener(MouseEvent.CLICK, actionUtilisateur);
// --
// -- L'écouteur contiens une fonction nommé 'actionUtilisateur'.
// -- Programmons simplement cette fonction.
// --
function actionUtilisateur(event:MouseEvent):void
{
s2.addEventListener(Event.ENTER_FRAME, mouvement);
}
// -- Comme vous pouvez le constater la fonction actionUtilisateur
// -- se contente d'appeler un autre écouteur conçu pour l'animation.
// --
function mouvement(event:Event):void
{
s2.y += 2;
if (s2.y > 200)
{
s2.y = 200;
s2.buttonMode = false;
s2.removeEventListener(Event.ENTER_FRAME, mouvement);
// --
// -- appelle et exécution de la fonction traceInfos();
// --
traceInfos();
// --
}
}
J'ai larguer le source en un seul bloc, ce qui devrais êtres apprécier des visiteurs désirant passé immédiatement à l'écriture et/ou au copier-coller afin de positionner dans leurs zone de travail, le source. Comme vous pourrez le constater beaucoup de changement auront été apporter dans le seul but de prendre, dès le départ, les meilleurs habitudes de travail . Ce point me semblais si essentielle que j'ai préparer ce tuto de façon différente. Question d'expérience en quelque sorte dont le but est d'offrir la presque totalité du post. Le reste est affaire d'ajustement.
:: Parlons maintenant, si vous le désirez bien, du contenu du source.
:: j'essairai donc d'être claire et concis.
Je vous parlais plus haut de l'importance de bien définir les imports. Il est bien de considérer ces points essentielles concernant les classes. N'importer pas inutilement une classe.
:: Voici 2 façon d'importer un package et/ou une classe. Exemple
:: 1 :: Package : import icom.design.*; // :: Ici je prend exemple de mes propre packages personnelles.
:: 2 :: Package/Classe : import icom.design.Design;
Au numéro 1, nous importons un package et, en plus, nous ciblons à l'intérieur du package toutes les classes pouvant être définis. C'est la raison de l'astérisque à la fin de l'instruction. Toutefois faite attention lorsque vous importer de cette façon : Voici un exemple :
import flash.display.*; // En réalité ici vous importer tout le contenu des classes apparteneant au package flash.display. Cependant poser vous la question, ais-je besoin de toute les classes de ce package ? , si oui allez-y de cette façon. Par contre si la réponse est non je n'utiliserai que la classe Loader par exemple, alors allez-y ainsi : import flash.display.Loader; // C'est toujours une question d'optimisation en quelque sorte, économiser les ressources en écrivant correctement et intelligemment vos sources.
:: à propos des variables en tête de document.
:: Suivant les imports viendront les variables. Celles-ci n'auront pas à être initialisés. Ces variables définit en entête du source, suivant les imports seront accessibles de partout et à n'importe quel moment. Nous pourrons donc les nommés et les cibler au travers n'importe laquelle des fonctions. Une variable non initialisé se présente comme suit : var forme:MovieClip; . Ce n'est que plus loin dans le programme que nous pourrons initialisé, ou si vous préférer, affecté une valeur à cette variable. Évidemment, la valeur de cette variable est sujet à changement durant l'exécution du programme en cours de lecture. Exemple d'affectation : forme = new MovieClip();
Prenez exemple d'une variable qui servira à stocker les points d'un joueur, à l'exécution d'un jeu quelquonque . Il est évident que cette variable se doit d'etre global à l'ensemble du jeu. Donc accessible de n'importe où à l'intérieur du programme. C'est l'un des avantages de la variable placer en entête de document/source. Elle se fait accessible.
:: Parlons maintenant, si vous le désirez bien, du contenu du source.
:: j'essairai donc d'être claire et concis.
Je vous parlais plus haut de l'importance de bien définir les imports. Il est bien de considérer ces points essentielles concernant les classes. N'importer pas inutilement une classe.
:: Voici 2 façon d'importer un package et/ou une classe. Exemple
:: 1 :: Package : import icom.design.*; // :: Ici je prend exemple de mes propre packages personnelles.
:: 2 :: Package/Classe : import icom.design.Design;
Au numéro 1, nous importons un package et, en plus, nous ciblons à l'intérieur du package toutes les classes pouvant être définis. C'est la raison de l'astérisque à la fin de l'instruction. Toutefois faite attention lorsque vous importer de cette façon : Voici un exemple :
import flash.display.*; // En réalité ici vous importer tout le contenu des classes apparteneant au package flash.display. Cependant poser vous la question, ais-je besoin de toute les classes de ce package ? , si oui allez-y de cette façon. Par contre si la réponse est non je n'utiliserai que la classe Loader par exemple, alors allez-y ainsi : import flash.display.Loader; // C'est toujours une question d'optimisation en quelque sorte, économiser les ressources en écrivant correctement et intelligemment vos sources.
:: à propos des variables en tête de document.
:: Suivant les imports viendront les variables. Celles-ci n'auront pas à être initialisés. Ces variables définit en entête du source, suivant les imports seront accessibles de partout et à n'importe quel moment. Nous pourrons donc les nommés et les cibler au travers n'importe laquelle des fonctions. Une variable non initialisé se présente comme suit : var forme:MovieClip; . Ce n'est que plus loin dans le programme que nous pourrons initialisé, ou si vous préférer, affecté une valeur à cette variable. Évidemment, la valeur de cette variable est sujet à changement durant l'exécution du programme en cours de lecture. Exemple d'affectation : forme = new MovieClip();
Prenez exemple d'une variable qui servira à stocker les points d'un joueur, à l'exécution d'un jeu quelquonque . Il est évident que cette variable se doit d'etre global à l'ensemble du jeu. Donc accessible de n'importe où à l'intérieur du programme. C'est l'un des avantages de la variable placer en entête de document/source. Elle se fait accessible.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Le prochain code ci-dessous, a un grand défaut et en même temps une belle qualité . . . Eh oui c'est ainsi.
:: Son défaut :: Le source n'est pas optimiser.
:: Sa qualité :: Très détailler et explicite. 100% programme.
Je ne vous demande pas ici de le conserver. Cependant il vaut d'être vu et étudier.
:: Exécuter le car il est très représentatif des besoins de conteneurs en zone Flash et vous montre un visuel complet sur la position de certaine zone. Aucune interactivité ne lui est associer pour l'instant. Mais je pourrais lui en associer. Je n'ai voulu ici témoigner que des zones prête à être cibler. Toutes les formes présentes dans cette maquette, sont des conteneurs. Ils sont prêt à charger n'importe laquelles des nombreux type de données accessible et accepter par Flash. Le concept est semblable aux autres sources, seulement j'ai décider subitement d'en faire les résultats que voici. Placer d'abord et avant tout vos conteneurs. Un conteneur de base accueillant les autres conteneurs, qui eux accueilleront les objets/programmes visuels et tout autre type de chargement des données.
Si vous désirez exécuté ce source, voici des points importants concernant le stage :
:: Dimension : 800px de large et 780px de haut
:: Background Color : Black.
:: Placer le source au premier keyframe du root.
:: Ctrl + Enter.
Vous croyez peut être que tout est régler concernant les Containers et bien détrompez vous, car ce n'est pas le cas.
:: Si vous étudier à nouveau le source et interroger le programme via l'action trace et via le Output Panel, vous voyez que nous avons eu des résultats en largeur et hauteur, n'est-ce pas ?. Mais quand n'est-il de la position ' x ' et la position ' y ' ? . . . Eh bien nous sommes toujours, et ce depuis le début à la position ' x=0 ' et ' y=0 '. Et ce, selon les coordonnées par défaut du conteneur de base. Celui dans lequel tous les autres conteneur sont placer.
Conservons les sources et revenons plus tard, au prochain post, car nous allons remédier à cette situation
:: En fait si nous devions charger à partir d'une url, une image dans le conteneur nommé ' zoneChargement0 ', la partie centrale de l'interface, cette image serais véritablement dans le conteneur, mais il serais en position ' x=0 ' et ' y=0 ', non pas du conteneur seulement, mais du conteneur de base lui même. Ce conteneur de base se nomme ' baseConteneur '.
la raison en est simple, c'est que nous avons manipuler par programme les objets visuels en ' x ' comme en ' y '.
Nous allons recréer notre source au prochain post. Voyez vous c'est que nous avons positionner les objets programmes visuels plutot que les conteneurs eux-même. Surveillez le prochain post.
:: Ajouter ce source à la suite, à la fin du dernier source, et voyez par vous même.
:: Retenez que l'image est vraiment dans le conteneur ' zoneChargement0 ', même s'il ne semble pas ainsi. Mais comme le conteneur est en position ' x=0 et y=0 ', de baseConteneur, il en seras de même de l'image. Nous allons donc remédié à la situation au prochain post.
:: Comprenez que vous pouvez déplacer l'objet/programme visuel et/ou le conteneur. Jusquà maintenant c'est l'objet/programme visuel que nous avons manipuler. Au prochain post nous changerons tout celà , nous ne manipulerons par programme que les conteneurs, les objets visuels contenus seront donc à la position ' x ' et ' y ' de son conteneur, et c'est le conteneur que nous déplacerons.
:: Le but est de vous faire comprendre la manipulation des conteneurs, et de leurs objets/programmes visuels.
:: À propos de l'image : Voici :: N'oubliez pas han . . . Elle seras dans le conteneur mais à la position ' x=0 et y=0 ' du conteneur, c'est le conteneur qui est à la position par défaut de baseConteneur.
C'est mes début en http: . Il se peut donc que l'image ne soit pas tjrs présente.
Par contre, je suis prêt à apprendre à ce niveau, afin d'amiliorer le tout.
Cependant, il reste tjrs la pièce jointe et le (*.zip), comme étant une possibilité des transferts
Vous désirez une preuve plus complète encore ?
:: Ajouter ce source à la toute fin
:: zoneChargement0.alpha = 0.5;
Voyez vous :: l'image charger est belle et bien dans le conteneur ' zoneChargement0 '.
:: Son défaut :: Le source n'est pas optimiser.
:: Sa qualité :: Très détailler et explicite. 100% programme.
Je ne vous demande pas ici de le conserver. Cependant il vaut d'être vu et étudier.
:: Exécuter le car il est très représentatif des besoins de conteneurs en zone Flash et vous montre un visuel complet sur la position de certaine zone. Aucune interactivité ne lui est associer pour l'instant. Mais je pourrais lui en associer. Je n'ai voulu ici témoigner que des zones prête à être cibler. Toutes les formes présentes dans cette maquette, sont des conteneurs. Ils sont prêt à charger n'importe laquelles des nombreux type de données accessible et accepter par Flash. Le concept est semblable aux autres sources, seulement j'ai décider subitement d'en faire les résultats que voici. Placer d'abord et avant tout vos conteneurs. Un conteneur de base accueillant les autres conteneurs, qui eux accueilleront les objets/programmes visuels et tout autre type de chargement des données.
Si vous désirez exécuté ce source, voici des points importants concernant le stage :
:: Dimension : 800px de large et 780px de haut
:: Background Color : Black.
:: Placer le source au premier keyframe du root.
:: Ctrl + Enter.
- Code: Tout sélectionner
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.filters.BlurFilter;
// --
var hautPageDesign:MovieClip;
var basPageDesign:MovieClip;
var gaucheNavigDesign:MovieClip;
var droiteNavigDesign:MovieClip;
var zoneChargement0Design:MovieClip;
var zoneChargement1Design:MovieClip;
var zoneChargement2Design:MovieClip;
// --
var baseConteneur:Sprite;
var hautPage:Sprite;
var basPage:Sprite;
var gaucheNavig:Sprite;
var droiteNavig:Sprite;
var zoneChargement0:Sprite;
var zoneChargement1:Sprite;
var zoneChargement2:Sprite;
// --
var filtre:BlurFilter;
var matrice:Array = [];
// --
baseConteneur = new Sprite();
hautPage = new Sprite();
basPage = new Sprite();
gaucheNavig = new Sprite();
droiteNavig = new Sprite();
zoneChargement0 = new Sprite();
zoneChargement1 = new Sprite();
zoneChargement2 = new Sprite();
// --
addChild(baseConteneur);
baseConteneur.addChild(hautPage);
baseConteneur.addChild(basPage);
baseConteneur.addChild(gaucheNavig);
baseConteneur.addChild(droiteNavig);
baseConteneur.addChild(zoneChargement0);
baseConteneur.addChild(zoneChargement1);
baseConteneur.addChild(zoneChargement2);
// --
// -- Design
// --
hautPageDesign = new MovieClip();
basPageDesign = new MovieClip();
gaucheNavigDesign = new MovieClip();
droiteNavigDesign = new MovieClip();
zoneChargement0Design = new MovieClip();
zoneChargement1Design = new MovieClip();
zoneChargement2Design = new MovieClip();
// --
hautPageDesign.graphics.lineStyle(2, 0xFFFFFF, 1);
hautPageDesign.graphics.beginFill(0xD4D0C8, 1);
hautPageDesign.graphics.drawRect(10, 10, 780, 50);
hautPage.addChild(hautPageDesign);
// --
basPageDesign.graphics.lineStyle(2, 0xFFFFFF, 1);
basPageDesign.graphics.beginFill(0xD4D0C8, 1);
basPageDesign.graphics.drawRect(10, 720, 780, 50);
basPage.addChild(basPageDesign);
// --
gaucheNavigDesign.graphics.lineStyle(2, 0xFFFFFF, 1);
gaucheNavigDesign.graphics.beginFill(0x660000, 1);
gaucheNavigDesign.graphics.drawRect(10, 66, 160, 649);
gaucheNavig.addChild(gaucheNavigDesign);
// --
droiteNavigDesign.graphics.lineStyle(2, 0xFFFFFF, 1);
droiteNavigDesign.graphics.beginFill(0x660000, 1);
droiteNavigDesign.graphics.drawRect(630, 66, 160, 649);
droiteNavig.addChild(droiteNavigDesign);
// --
zoneChargement0Design.graphics.lineStyle(2, 0xFFFF00, 1);
zoneChargement0Design.graphics.beginFill(0x333333, 1);
zoneChargement0Design.graphics.drawRect(174, 66, 452, 649);
zoneChargement0.addChild(zoneChargement0Design);
// --
filtre = new BlurFilter();
filtre.blurX = 12;
filtre.blurY = 0;
matrice = [filtre];
gaucheNavigDesign.filters = matrice;
droiteNavigDesign.filters = matrice;
hautPageDesign.filters = matrice;
basPageDesign.filters = matrice;
Vous croyez peut être que tout est régler concernant les Containers et bien détrompez vous, car ce n'est pas le cas.
:: Si vous étudier à nouveau le source et interroger le programme via l'action trace et via le Output Panel, vous voyez que nous avons eu des résultats en largeur et hauteur, n'est-ce pas ?. Mais quand n'est-il de la position ' x ' et la position ' y ' ? . . . Eh bien nous sommes toujours, et ce depuis le début à la position ' x=0 ' et ' y=0 '. Et ce, selon les coordonnées par défaut du conteneur de base. Celui dans lequel tous les autres conteneur sont placer.
Conservons les sources et revenons plus tard, au prochain post, car nous allons remédier à cette situation
:: En fait si nous devions charger à partir d'une url, une image dans le conteneur nommé ' zoneChargement0 ', la partie centrale de l'interface, cette image serais véritablement dans le conteneur, mais il serais en position ' x=0 ' et ' y=0 ', non pas du conteneur seulement, mais du conteneur de base lui même. Ce conteneur de base se nomme ' baseConteneur '.
la raison en est simple, c'est que nous avons manipuler par programme les objets visuels en ' x ' comme en ' y '.
Nous allons recréer notre source au prochain post. Voyez vous c'est que nous avons positionner les objets programmes visuels plutot que les conteneurs eux-même. Surveillez le prochain post.
:: Ajouter ce source à la suite, à la fin du dernier source, et voyez par vous même.
:: Retenez que l'image est vraiment dans le conteneur ' zoneChargement0 ', même s'il ne semble pas ainsi. Mais comme le conteneur est en position ' x=0 et y=0 ', de baseConteneur, il en seras de même de l'image. Nous allons donc remédié à la situation au prochain post.
:: Comprenez que vous pouvez déplacer l'objet/programme visuel et/ou le conteneur. Jusquà maintenant c'est l'objet/programme visuel que nous avons manipuler. Au prochain post nous changerons tout celà , nous ne manipulerons par programme que les conteneurs, les objets visuels contenus seront donc à la position ' x ' et ' y ' de son conteneur, et c'est le conteneur que nous déplacerons.
:: Le but est de vous faire comprendre la manipulation des conteneurs, et de leurs objets/programmes visuels.
:: À propos de l'image : Voici :: N'oubliez pas han . . . Elle seras dans le conteneur mais à la position ' x=0 et y=0 ' du conteneur, c'est le conteneur qui est à la position par défaut de baseConteneur.
- Code: Tout sélectionner
// -- Chargeur image --
var chargeur:Loader = new Loader();
// -- Mise à jour 26 fév 2008 : hiboox.
var requete:URLRequest = new URLRequest('http://images3.hiboox.com/images/0908/do5kxq22.jpg');
chargeur.load(requete);
zoneChargement0.addChild(chargeur);
C'est mes début en http: . Il se peut donc que l'image ne soit pas tjrs présente.
Par contre, je suis prêt à apprendre à ce niveau, afin d'amiliorer le tout.
Cependant, il reste tjrs la pièce jointe et le (*.zip), comme étant une possibilité des transferts
Vous désirez une preuve plus complète encore ?
:: Ajouter ce source à la toute fin
:: zoneChargement0.alpha = 0.5;
Voyez vous :: l'image charger est belle et bien dans le conteneur ' zoneChargement0 '.
- Code: Tout sélectionner
zoneChargement0.alpha = 0.5;
// --
// -- Vous cibler le conteneur et le contenu réagit
// -- C'est normal puisque les conteneurs ne sont que des données, donc invisible,
// -- mais manipulable, programmable.
// -- Le conteneur de l'image est la partie centrale
// -- le rectangle au contour jaune
// --
var tf:TextFormat = new TextFormat();
var tx:TextField = new TextField();
tf.font = 'sans-serif';
tf.bold = true;
// --
tx.selectable = false;
tx.width = 800;
tx.textColor = 0x000000;
tx.setTextFormat(tf);
tx.text = "L'image est à la position x=0 et y=0 de zoneChargement0 : zoneChargement0 est à la position x=0 et y=0 de baseConteneur\n";
tx.appendText("Et baseConteneur est à x=10 et y=10 du Player Flash. Au prochain post nous allons remédier à tout celà ");
basPage.addChild(tx);
tx.x = 35;
tx.y = 715;
// -- Dernière mise à jour : 28 fév 2008.




