tim2
Messages postés4Date d'inscriptionjeudi 18 mars 2004StatutMembreDernière intervention28 janvier 2010
-
27 janv. 2010 à 16:40
tim2
Messages postés4Date d'inscriptionjeudi 18 mars 2004StatutMembreDernière intervention28 janvier 2010
-
28 janv. 2010 à 10:13
Je n'avais pas touché à Flash depuis AS2; je ne comprends plus rien..!
J'essaie de créer dynamiquement un carré - la fonction est bien appelée et je peux retourner les propriétés du carré, mais le carré n'apparait pas.. quelle bonne âme aurait une idée?? C'est un truc à la con pour sûr..
(On dirait que tout devient de + en + compliqué... Je faisais ça en une ligne autrefois...) help..
Voici le code:
public class bandeau {
private var debut:int=189;
private var taille:int=100;
private var canvas:Sprite;
public function bandeau() {
var bmd:BitmapData = new BitmapData(taille, taille, false, 0xFF6B6B6B);
var bm:Bitmap = new Bitmap(bmd);
canvas=new Sprite();
canvas.addChild(bm);
canvas.x=50;
canvas.y=50;
//trace(canvas.visible);
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 27 janv. 2010 à 17:08
Bonjour,
Là tu crées un bitmapData que tu associes à un bitmap, puis tu crées un Sprite dans lequel tu affiches le bitmap, puis tu places le Sprite en 50:50 ...
Sauf que tu n'as pas affiché le Sprite dans ta liste d'affichage courante.
note1 : le sprite est actuellement inutile, le BMP faisant trés bien l'affaire tout seul.
note2 : ta class n'étends pas un displayObject, elle n'a donc pas de liste d'affichage
tim2
Messages postés4Date d'inscriptionjeudi 18 mars 2004StatutMembreDernière intervention28 janvier 2010 28 janv. 2010 à 10:06
Merci de ta réponse; j'ai donc 'étendu le Sprite';
aussi essayé avec drawRect;
le pb est toujours là, pas d'affichage, alors que dans les 2 cas j'ajoute bien à la liste d'affichage non? (une fois via un sprite vide et une autre fois sans rien - comme dans exemples de tuto..); donc je sèche encore..:
tim2
Messages postés4Date d'inscriptionjeudi 18 mars 2004StatutMembreDernière intervention28 janvier 2010 27 janv. 2010 à 17:16
Merci de ta réponse.
Le sprite est dû au fait que j'ai besoin de faire des manips ensuite (sur alpha, etc) qui ne peuvent se faire que sur un MC.
Je ne comprends pas, excuse, quand tu dis 'tu n'as pas affiché le Sprite dans ta liste d'affichage courante'.
note2: 'ta class n'étends pas un displayObject, elle n'a donc pas de liste d'affichage ' : elle devrait? Comment fait-on? J'ai le bouquin de Moock - 1000 pages - 4 heures à bouquiner pour arriver à rien de satisfaisant - c'est dingue ce qu'est devenu Flash..
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 27 janv. 2010 à 17:21
J'oubliais :
note3 : pour faire un simple carré, il u a une classe de dessin qui existe sur les displayObject : Graphics, qui a pleins de méthodes similaires à l'AS2 dont des nouvelles tels que drawCircle et drawRect très pratiques.
Peg'
Vous n’avez pas trouvé la réponse que vous recherchez ?
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 27 janv. 2010 à 17:25
pour ta class :
public class MaClass extends Sprite { //par exemple
C'est à dire que ta class sera un Sprite à la base, elle aura toutes les propriétés de l'objet qu'elle étends et pourra être manipulée comme tel.
Ce qui fait que tu peux dessiner dessus ou lui ajouter des éléments graphiques, car elle aura une liste d'affichage.
Pour ton Sprite :
Quand tu fais "new Sprite()" tu crées un Sprite vide, qui est en mémoire. Pour l'afficher, tu dois le placer dans la liste d'affichage d'un objet déjà présent sur la scène, avec DisplayObjectContainer.addChild();
C'est comme avoir un tableau et des objets dans une boîte à y placer.