AS3 : Animer un clip depuis une classe? - Flash/ActionScript - Programmation
Marsh Posté le 13-03-2008 à 19:59:16
ta classe doit étendre flash.display.MovieClip et être liée au clip preloader_mc dans la bibliothèque (clic-droit sur le nom du clip). A partir de là , les éléments graphiques présents dans ce clip sont accessibles comme des propriétés publiques, appelées simplement en utilisant leur nom d'occurrence (que l'on attribue en cliquant l'élément sur la scène et en tapant dans la boite "propriétés" ).
dès lors une instanciation suivie d'un ajout à la liste d'affichage (addChild(new Preloader())) depuis ta classe racine de l'application va créer effectivement un preloader visible.
ta classe racine doit être dans un .as située dans le même dossier que le .fla, tu la lie à ton application via la barre de propriétés (clique sur du vide, hop, la case apparait en bas).
Marsh Posté le 13-03-2008 à 23:05:58
antika a écrit : ta classe doit étendre flash.display.MovieClip et être liée au clip preloader_mc dans la bibliothèque (clic-droit sur le nom du clip). A partir de là , les éléments graphiques présents dans ce clip sont accessibles comme des propriétés publiques, appelées simplement en utilisant leur nom d'occurrence (que l'on attribue en cliquant l'élément sur la scène et en tapant dans la boite "propriétés" ). |
Déjà, merci pour ton aide !
Je vois pas comment lier la classe au clip du Prelaoder par la bibliothèque parce que le clip en question n'est pas dans la bibliothèque. C'est un autre SWF chargé dans mon SWF principal...
var bdz_preloader:ILoadableFile = factory.create("BDZ_preloader.swf" );
Dans ce cas, comment faire?
L'affichage dois se lancer depuis la classe principale, c'est au autre classe que la classe Preloader? La classe principal va créer un nouvel objet de type Preloader? Pour l'instant la Classe Preloader est la seule que j'ai créé.
La classe racine doit être lié à mon clip principal? C'est à dire mon Main.swf qui appelle preloader.swf?
C'est pas encore très clair pour moi. Merci en tout cas pour ton aide !
Marsh Posté le 21-03-2008 à 15:59:40
Je pense avoir un peu avancé. J'ai désormais une DocumentClass sur mon preloader.swf. Cette classe déclarer une variable qui sera affichée dans un TextField de mon preloader.
J'aimerai depuis mon main.swf lancer une fonction de la DocumentClass de mon preloader pour modifier la variable affichée dans mon prelaoder :
Main.swf
Code :
|
La DocumentClass, Preloader.as de mon preloader.swf :
Code :
|
La variable _pourcent qui est affichée dans mon preloader.swf, n'est pas modifiée, malgré que la fonction setPourcent soit lancée dans mon main.swf... Je vois pas comment faire... Une petite idée?
Marsh Posté le 13-03-2008 à 16:58:22
Bonjour tout le monde,
Je commence l'AS3 et je galère un peu... J'ai certainement des problèmes de méthode et un manque de connaissance en POO.
J'aimerai savoir s'il est possible de modifier un clip (ses dimensions, ses coordonnées, son opacité) depuis une classe importer dans un clip parent? C'est la librairie Tweener qui permet ce genre de chose?
Pour expliquer ce que j'ai fait jusque là, je charge dans mon FLA principal les différents clips utilisés pour mon site (dans mon exemple il n'y a que le SWF "BDZ_preloader.swf" ) :
Ma classe Preloader :
Pendant le chargement de mes swf un objet "Preloader" est créé. Il va me calculer le taux de chargement de mon animation totale avec la méthode setPourcent. Ce calcul va avoir des conséquences sur le clip "mc_bdz_preloader" chargé et affiché avec addChild sur la scène principale (progression de la barre de chargement etc.).
Je sais pas si je peux agir sur le clip preloader depuis la classe. Peut être qu'il est préférable, si c'est possible, d'afficher ce clip dans la classe Preloader, c'est à dire que l'objet sera affiché (en utilisant une methode "affichePreloader" ) et modifié dans la classe.
Je suis perdu et j'ai un peu de mal à avancer... Si quelqu'un a le courage de me donner un coup de main, je suis intéressé .