Je suis novice en ActionScript alors excusez-moi si c'est une question stupide. J'ai donc créé une classe, étendu la classe des sprites, et maintenant dans le constructeur, j'essaie de définir les propriétés width et height du Sprite qui sont héritées de DisplayObject. Cependant, après avoir défini this.width et this.height, et imprimer les valeurs, j'obtiens 0 pour les deux.AS3 Class Sprite Spread
Que diable se passe-t-il? Quand je regarde les livesocs, je vois que DisplayObject a la largeur et la hauteur listées comme propriétés publiques. J'ai été capable d'instancier directement un sprite, et de définir la largeur et la hauteur après l'instanciation, donc je ne comprends pas.
package {
import flash.display.*;
public class ScrollBar extends Sprite {
public function ScrollBar(width:Number, height:Number) {
trace(width + "x" + height);
this.width = width;
this.height = height;
trace(this.width + "x" + this.height);
}
}
sortie:
20x400
0x0
Je ne suis pas sûr de 'width: uint, height: uint'. Que se passera-t-il lorsque vous les changerez en ': Number', car' this.width' est de type Number. – Pindatjuh
Même résultat même avec Number. Vous avez raison, les attributs doivent être Number. – Steve