Packageflash.display
Classepublic class Sprite
HéritageSprite Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
Sous-classes FLVPlayback, FLVPlaybackCaptioning, HTMLLoader, MovieClip, UIComponent

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

La classe Sprite est un bloc constitutif de base de la liste d'affichage : un nœud de liste d'affichage qui permet d'afficher des images et peut également contenir des enfants.

Un objet Sprite est similaire à un clip, mais ne possède pas de scénario. Sprite est une classe de base particulièrement adaptée aux objets qui ne nécessitent pas de scénario. Elle conviendrait par exemple aux composants de l'interface utilisateur qui ne requièrent en règle générale pas de scénario.

La classe Sprite est nouvelle dans ActionScript 3.0. Vous pouvez l'utiliser à la place de la classe MovieClip, qui conserve l'ensemble des fonctionnalités des versions antérieures d'ActionScript pour assurer une compatibilité ascendante.

Consulter les exemples

Voir aussi

Classes d'affichage principales


Propriétés publiques
 PropriétéDéfini par
 InheritedaccessibilityProperties : AccessibilityProperties
Options d'accessibilité actuelles de l'objet d'affichage.
DisplayObject
 Inheritedalpha : Number
Indique la valeur de transparence alpha de l'objet spécifié.
DisplayObject
 InheritedblendMode : String
Valeur de la classe BlendMode qui spécifie le mode de fondu à utiliser.
DisplayObject
 InheritedblendShader : Shader
[lecture seule] Définit un shader utilisé pour le fondu de l'arrière-plan et du premier plan.
DisplayObject
  buttonMode : Boolean
Spécifie le mode de bouton du sprite.
Sprite
 InheritedcacheAsBitmap : Boolean
Si true est défini, Flash Player ou Adobe AIR place en mémoire cache une version bitmap interne de l’objet d'affichage.
DisplayObject
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
 InheritedcontextMenu : NativeMenu
Spécifie le menu contextuel associé à l'objet.
InteractiveObject
 InheriteddoubleClickEnabled : Boolean
Spécifie si l'objet reçoit les événements doubleClick.
InteractiveObject
  dropTarget : DisplayObject
[lecture seule] Spécifie l'objet d'affichage sur lequel le sprite est glissé ou sur lequel il a été déposé.
Sprite
 Inheritedfilters : Array
Tableau indexé contenant tous les objets filtre actuellement associés à l'objet d'affichage.
DisplayObject
 InheritedfocusRect : Object
Spécifie si l'objet affiche un rectangle de focus.
InteractiveObject
  graphics : Graphics
[lecture seule] Spécifie l'objet Graphics appartenant au sprite qui prend en charge les commandes de dessin vectoriel.
Sprite
 Inheritedheight : Number
Indique la hauteur de l'objet d'affichage, en pixels.
DisplayObject
  hitArea : Sprite
Désigne un autre sprite qui fera office de zone active d'un sprite.
Sprite
 InheritedloaderInfo : LoaderInfo
[lecture seule] Renvoie un objet LoaderInfo qui contient des informations relatives au chargement du fichier auquel appartient cet objet d'affichage.
DisplayObject
 Inheritedmask : DisplayObject
L'objet d'affichage appelant est masqué par l'objet mask spécifié.
DisplayObject
 InheritedmouseChildren : Boolean
Détermine si les enfants de l'objet prennent ou non en charge la souris.
DisplayObjectContainer
 InheritedmouseEnabled : Boolean
Spécifie si l'objet reçoit les messages souris.
InteractiveObject
 InheritedmouseX : Number
[lecture seule] Indique la coordonnée x de la position de la souris, en pixels.
DisplayObject
 InheritedmouseY : Number
[lecture seule] Indique la coordonnée y de la position de la souris, en pixels.
DisplayObject
 Inheritedname : String
Indique le nom d'occurrence de DisplayObject.
DisplayObject
 InheritednumChildren : int
[lecture seule] Renvoie le nombre d'enfants de l'objet.
DisplayObjectContainer
 InheritedopaqueBackground : Object
Indique si l'objet d'affichage est opaque avec une couleur d'arrière-plan spécifique.
DisplayObject
 Inheritedparent : DisplayObjectContainer
[lecture seule] Indique l'objet DisplayObjectContainer qui contient l'objet d'affichage.
DisplayObject
 Inheritedprototype : Object
[statique] Référence à l'objet prototype d'un objet de classe ou fonction.
Object
 Inheritedroot : DisplayObject
[lecture seule] Pour un objet d'affichage résidant dans un fichier SWF chargé, la propriété root correspond à l'objet d'affichage de premier niveau dans la partie de la structure arborescente de la liste d'affichage représentée par ce fichier.
DisplayObject
 Inheritedrotation : Number
Indique la rotation de l'occurrence de DisplayObject, en degrés, à partir de son orientation d'origine.
DisplayObject
 InheritedrotationX : Number
Indique la rotation de l'axe des x de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent.
DisplayObject
 InheritedrotationY : Number
Indique la rotation de l'axe des y de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent.
DisplayObject
 InheritedrotationZ : Number
Indique la rotation de l'axe des z de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent.
DisplayObject
 Inheritedscale9Grid : Rectangle
Grille de mise à l'échelle en vigueur.
DisplayObject
 InheritedscaleX : Number
Indique l'échelle horizontale (pourcentage) de l'objet telle qu'elle est appliquée à partir du point d'alignement.
DisplayObject
 InheritedscaleY : Number
Indique le redimensionnement vertical (pourcentage) de l'objet tel qu'il est appliqué à partir du point d'alignement.
DisplayObject
 InheritedscaleZ : Number
Indique l'échelle de profondeur (pourcentage) de l'objet tel qu'elle est appliquée à partir du point d'alignement.
DisplayObject
 InheritedscrollRect : Rectangle
Cadre de délimitation du défilement de l'objet d'affichage.
DisplayObject
  soundTransform : SoundTransform
Contrôle le son à l'intérieur du sprite.
Sprite
 Inheritedstage : Stage
[lecture seule] Scène de l'objet d'affichage.
DisplayObject
 InheritedtabChildren : Boolean
Détermine si les enfants de l'objet prennent ou non en charge la tabulation.
DisplayObjectContainer
 InheritedtabEnabled : Boolean
Indique si cet objet est spécifié dans l'ordre de tabulation.
InteractiveObject
 InheritedtabIndex : int
Spécifie l'ordre de tabulation des objets dans un fichier SWF.
InteractiveObject
 InheritedtextSnapshot : TextSnapshot
[lecture seule] Renvoie un objet TextSnapshot pour l'occurrence de DisplayObjectContainer.
DisplayObjectContainer
 Inheritedtransform : Transform
Objet dont les propriétés se rapportent à la matrice, à la transformation des couleurs et aux limites des pixels d'un objet d'affichage.
DisplayObject
  useHandCursor : Boolean
Valeur booléenne indiquant si le curseur en forme de main apparaît lorsque la souris survole un sprite dont la propriété buttonMode est réglée sur true.
Sprite
 Inheritedvisible : Boolean
Indique si l'objet d'affichage est visible ou non.
DisplayObject
 Inheritedwidth : Number
Indique la largeur de l'objet d'affichage, en pixels.
DisplayObject
 Inheritedx : Number
Indique la coordonnée x de l'occurrence de DisplayObject par rapport aux coordonnées locales de l'objet DisplayObjectContainer parent.
DisplayObject
 Inheritedy : Number
Indique la coordonnée y de l'occurrence de DisplayObject par rapport aux coordonnées locales de l'objet DisplayObjectContainer parent.
DisplayObject
 Inheritedz : Number
Indique la position de coordonnée z le long de l'axe des z de l'occurrence DisplayObject par rapport au conteneur 3D parent.
DisplayObject
Méthodes publiques
 MéthodeDéfini par
  
Crée une occurrence de Sprite.
Sprite
 Inherited
Ajoute une occurrence enfant de DisplayObject à cette occurrence de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
Ajoute une occurrence enfant de DisplayObject à cette occurrence de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement.
EventDispatcher
 Inherited
Indique si les restrictions de sécurité entraîneraient l'omission des objets d'affichage de la liste renvoyée en appelant la méthode DisplayObjectContainer.getObjectsUnderPoint() avec le point « point » spécifié.
DisplayObjectContainer
 Inherited
Détermine si l'objet d'affichage spécifié est un enfant de l'occurrence de DisplayObjectContainer ou l'occurrence en tant que telle.
DisplayObjectContainer
 Inherited
Distribue un événement dans le flux d'événements.
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Renvoie un rectangle qui définit la zone de l'objet d'affichage relativement au système de coordonnées de l'objet targetCoordinateSpace.
DisplayObject
 Inherited
Renvoie l'occurrence enfant de l'objet d'affichage associée à l'index spécifié.
DisplayObjectContainer
 Inherited
Renvoie l'objet d'affichage enfant portant le nom spécifié.
DisplayObjectContainer
 Inherited
Renvoie la position d'index d'une occurrence enfant de DisplayObject.
DisplayObjectContainer
 Inherited
Renvoie un tableau d'objets de niveau inférieur au point spécifié et qui sont les enfants (ou les petits-enfants, etc.) de l'occurrence de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
Renvoie un rectangle qui définit les limites de l'objet d'affichage, en se basant sur le système de coordonnées défini par le paramètre targetCoordinateSpace, moins tout trait appliqué aux formes.
DisplayObject
 Inherited
Convertit l'objet point des coordonnées de scène (globales) vers les coordonnées de l'objet d'affichage (locales).
DisplayObject
 Inherited
Convertit un point bidimensionnel à partir des coordonnées de scène (globales) vers les coordonnées d'un objet d'affichage tridimensionnel (locales).
DisplayObject
 Inherited
Vérifie si des écouteurs sont enregistrés auprès de l'objet EventDispatcher pour un type spécifique d'événement.
EventDispatcher
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
Evalue le cadre de délimitation de l'objet d'affichage pour savoir s'il recouvre ou recoupe le cadre de délimitation de l'objet d'affichage obj.
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
Evalue l'objet d'affichage pour savoir s'il recouvre ou recoupe le point spécifié par les paramètres x et y.
DisplayObject
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre.
Object
 Inherited
Convertit un point tridimensionnel des coordonnées de l'objet d'affichage tridimensionnel (locales) vers un point bidimensionnel dans les coordonnées de scène (globales).
DisplayObject
 Inherited
Convertit l'objet point des coordonnées de l'objet d'affichage (locales) vers les coordonnées de la scène (globales).
DisplayObject
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Supprime l'occurrence enfant de DisplayObject spécifiée de la liste d'enfants de l'occurrence de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
Supprime une occurrence enfant de DisplayObject de la position d'index spécifiée dans la liste d'enfants de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l'objet EventDispatcher.
EventDispatcher
 Inherited
Modifie la position d'un enfant existant dans le conteneur d'objet d'affichage.
DisplayObjectContainer
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
  
startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
Permet à l'utilisateur de faire glisser le sprite spécifié.
Sprite
  
Met fin à la méthode startDrag().
Sprite
 Inherited
Intervertit l'ordre z (ordre d'empilement du premier plan vers l'arrière-plan) des deux objets enfants spécifiés.
DisplayObjectContainer
 Inherited
swapChildrenAt(index1:int, index2:int):void
Intervertit l'ordre z (ordre d'empilement du premier plan vers l'arrière-plan) des objets enfants aux deux positions d'index spécifiées dans la liste d'enfants.
DisplayObjectContainer
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
 Inherited
Vérifie si un écouteur d'événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d'événement spécifié.
EventDispatcher
Evénements
 Evénement Synthèse Défini par
 Inherited[Evénement de diffusion] Distribué lorsque l'application Flash Player obtient le focus du système d'exploitation et devient active.EventDispatcher
 InheritedDistribué lorsqu'un objet d'affichage est ajouté à la liste d'affichage.DisplayObject
 InheritedEnvoyé lorsqu'un objet d'affichage est ajouté dans la liste d'affichage de la scène, directement ou par l'intermédiaire d'une arborescence secondaire qui contient l'objet d'affichage.DisplayObject
 InheritedDistribué lorsque l'utilisateur sélectionne 'Effacer' (ou 'Supprimer') dans le menu contextuel.InteractiveObject
 InheritedDistribué lorsque l'utilisateur appuie sur le bouton principal de son périphérique de pointage et le relâche sur la même occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l'action d'un utilisateur active le menu contextuel associé à cet objet interactif dans une application AIR.InteractiveObject
 InheritedDistribué lorsque l'utilisateur active la combinaison de touches de raccourci propre à la plate-forme pour une opération de copie ou sélectionne 'Copier' dans le menu contextuel.InteractiveObject
 InheritedDistribué lorsque l'utilisateur active la combinaison de touches de raccourci propre à la plate-forme pour une opération de coupage ou sélectionne 'Couper' dans le menu contextuel.InteractiveObject
 Inherited[Evénement de diffusion] Distribué lorsque l'application Flash Player ou AIR perd le focus du système d'exploitation et devient inactive.EventDispatcher
 InheritedDistribué lorsque l'utilisateur appuie sur le bouton principal d'un périphérique de pointage et le relâche deux fois de suite sur la même occurrence d'InteractiveObject si l'indicateur doubleClickEnabled de cet objet est réglé sur true.InteractiveObject
 Inherited[événement de diffusion] Distribué lorsque la tête de lecture est placée sur une nouvelle image.DisplayObject
 Inherited[événement de diffusion] Distribué lorsque la tête de lecture quitte l'image en cours.DisplayObject
 InheritedDistribué après la prise de focus par un objet d'affichage.InteractiveObject
 InheritedDistribué après la perte de focus par un objet d'affichage.InteractiveObject
 Inherited[événement de diffusion] Distribué après l'exécution des constructeurs des objets d'affichage d'image, mais avant celle des scripts d'image.DisplayObject
 InheritedDistribué lorsque l'utilisateur appuie sur une touche.InteractiveObject
 InheritedDistribué lorsque l’utilisateur tente de déplacer le focus à l’aide du clavier.InteractiveObject
 InheritedDistribué lorsque l'utilisateur relâche une touche.InteractiveObject
 InheritedDistribué lorsque l’utilisateur appuie sur le bouton central de son périphérique de pointage et le relâche sur la même occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur appuie sur le bouton du périphérique de pointage central sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur relâche le bouton du périphérique de pointage sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur appuie sur le bouton du périphérique de pointage sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l'utilisateur tente de déplacer le focus à l'aide d'un périphérique de pointage.InteractiveObject
 InheritedDistribué lorsque l'utilisateur déplace le périphérique de pointage placé sur une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l'utilisateur éloigne un périphérique de pointage d'une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l’utilisateur place un périphérique de pointage sur une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur relâche le bouton du périphérique de pointage sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsque la molette d'une souris est actionnée sur une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué par l'initiateur glisser InteractiveObject lorsque l'utilisateur arrête l'opération glisser.InteractiveObject
 InheritedDistribué par l'objet InteractiveObject cible lorsqu'un objet glissé est déposé dessus et que l'opération déposer a été acceptée avec un appel à DragManager.acceptDragDrop().InteractiveObject
 InheritedDistribué par un InteractiveObject lorsqu'une opération glisser entre dans ses limites.InteractiveObject
 InheritedDistribué par un InteractiveObject lorsqu'une opération glisser sort des limites.InteractiveObject
 InheritedDistribué par un objet InteractiveObject de façon continue lorsqu'une opération glisser reste dans ses limites.InteractiveObject
 InheritedDistribué au début d'une opération glisser par l'objet InteractiveObject spécifié comme initiateur de l'action glisser dans l'appel DragManager.doDrag().InteractiveObject
 InheritedDistribué lors d'une opération glisser par l'objet InteractiveObject spécifié comme initiateur de l'action glisser dans l'appel DragManager.doDrag().InteractiveObject
 InheritedDistribué lorsque l'utilisateur active la combinaison de touches de raccourci propre à la plate-forme pour une opération de collage ou sélectionne 'Coller' dans le menu contextuel.InteractiveObject
 InheritedDistribué lorsqu'un objet d'affichage est sur le point d'être supprimé de la liste d'affichage.DisplayObject
 InheritedDistribué lorsqu'un objet d'affichage est sur le point d'être supprimé de la liste d'affichage de la scène, directement ou par l'intermédiaire de la suppression d'une arborescence secondaire qui contient l'objet d'affichage.DisplayObject
 Inherited[événement de diffusion] Distribué lorsque la liste d'affichage est sur le point d'être mise à jour et restituée.DisplayObject
 InheritedDistribué lorsque l’utilisateur appuie sur le bouton droit de son périphérique de pointage et le relâche sur la même occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur appuie sur le bouton du périphérique de pointage sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsqu'un utilisateur relâche le bouton du périphérique de pointage sur une occurrence InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l'utilisateur éloigne un périphérique de pointage d'une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l’utilisateur place un périphérique de pointage sur une occurrence de InteractiveObject.InteractiveObject
 InheritedDistribué lorsque l'utilisateur active la combinaison de touches de raccourci propre à la plate-forme pour tout sélectionner ou choisit 'Sélectionner tout' dans le menu contextuel.InteractiveObject
 InheritedDistribué lorsque la valeur de l'indicateur tabChildren de l'objet change.InteractiveObject
 InheritedDistribué lorsque l'indicateur tabEnabled de l'objet change.InteractiveObject
 InheritedDistribué lorsque la valeur de la propriété tabIndex de l’objet change.InteractiveObject
Détails de la propriété
buttonModepropriété
buttonMode:Boolean  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Spécifie le mode de bouton du sprite. Si true est renvoyé, ce sprite se comporte comme un bouton, ce qui signifie qu'il déclenche l'affichage du curseur en forme de main lorsque la souris le survole et peut recevoir un événement click si l'utilisateur appuie sur la touche Entrée ou la barre d'espacement lorsque le sprite dispose du focus. Pour remplacer le curseur en forme de main par le pointeur standard, réglez la propriété useHandCursor sur false.

Bien qu'il soit préférable d'utiliser la classe SimpleButton pour créer des boutons, la propriété buttonMode permet d'affecter à un sprite une fonctionnalité similaire à celle d'un bouton. Pour inclure un sprite dans l'ordre de tabulation, réglez la propriété tabEnabled (héritée de la classe InteractiveObject et réglée sur false par défaut) sur true. Demandez-vous en outre si les enfants de votre sprite doivent prendre en charge la souris. La plupart des boutons n'activent pas l'interactivité avec la souris pour leurs objets enfants, en raison de son impact sur le flux d'événements. Pour désactiver l'interactivité avec la souris pour tous les objets enfants, réglez la propriété mouseChildren (héritée de la classe DisplayObjectContainer) sur false.

Si vous utilisez la propriété buttonMode avec la classe MovieClip (une sous-classe de la classe Sprite), la fonctionnalité de votre bouton risque d'être enrichie. Si vous incluez les étiquettes d'images _up, _over et _down, Flash Player gère les changements d'état automatiques (fonctionnalité similaire à celle intégrée aux versions antérieures d'ActionScript pour les clips utilisés en tant que boutons). Ces changements d'état automatiques ne sont pas disponibles pour les sprites, qui ne disposent pas de scénario et donc, pas d'images à étiqueter.



Implémentation
    public function get buttonMode():Boolean
    public function set buttonMode(value:Boolean):void

Voir aussi


Exemple
L'exemple suivant crée deux sprites et définit la propriété buttonMode sur true pour l'un et false pour l'autre. Lorsque vous compilez et exécutez l'application, les deux sprites répondent aux événements de la souris, mais seul celui où buttonMode est défini sur true a recours au curseur en forme de main et est inclus dans l'ordre de tabulation :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);
circle1.buttonMode = true;
circle1.addEventListener(MouseEvent.CLICK, clicked);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0xFFCC00);
circle2.graphics.drawCircle(120, 40, 40);
circle2.buttonMode = false;
circle2.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void {
    trace ("Click!");
}

addChild(circle1);
addChild(circle2);
dropTargetpropriété 
dropTarget:DisplayObject  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Spécifie l'objet d'affichage sur lequel le sprite est glissé ou sur lequel il a été déposé.



Implémentation
    public function get dropTarget():DisplayObject

Voir aussi


Exemple
L'exemple suivant crée un sprite circle et deux sprites target. La méthode startDrag() est appelée sur le sprite circle lorsque l'utilisateur place le curseur sur le sprite et appuie sur le bouton de la souris, et lorsque la méthode stopDrag() est appelée si l'utilisateur relâche le bouton de la souris. Cette opération permet de faire glisser le sprite. Lorsque l'utilisateur relâche le bouton de sa souris, la méthode mouseRelease() est appelée, qui en retour suit la propriété name de l'objet dropTarget — celui vers lequel l'utilisateur fait glisser le sprite circle :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);

var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";

var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";

addChild(target1);
addChild(target2);
addChild(circle);

circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) 

function mouseDown(event:MouseEvent):void {
    circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);

function mouseReleased(event:MouseEvent):void {
    circle.stopDrag();
    trace(circle.dropTarget.name);
}
graphicspropriété 
graphics:Graphics  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Spécifie l'objet Graphics appartenant au sprite qui prend en charge les commandes de dessin vectoriel.



Implémentation
    public function get graphics():Graphics

Exemple
L'exemple suivant crée un sprite circle et utilise sa propriété graphics pour dessiner un cercle avec une trame jaune (0xFFCC00) :
import flash.display.Sprite;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(40, 40, 40);
addChild(circle);
hitAreapropriété 
hitArea:Sprite  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Désigne un autre sprite qui fera office de zone active d'un sprite. Si la propriété hitArea n'existe pas, ou si sa valeur est null ou undefined, le sprite fait office de zone active. La valeur de la propriété hitArea peut être une référence à un objet Sprite.

Vous pouvez modifier la propriété hitArea à tout moment ; le sprite modifié accepte immédiatement le nouveau comportement de la zone active. Il n'est pas nécessaire que le sprite désigné comme zone active soit visible ; bien qu'elle ne soit pas visible, sa forme graphique est encore détectée comme zone active.

Remarque : vous devez définir sur false la propriété mouseEnabled du sprite désigné comme zone active. Sinon, votre bouton sprite risque de ne pas fonctionner, car le sprite désigné comme zone active reçoit les événements de souris au lieu du bouton sprite.



Implémentation
    public function get hitArea():Sprite
    public function set hitArea(value:Sprite):void

Exemple
L'exemple suivant crée les sprites circle et square. Le sprite square correspond à hitArea pour le sprite circle. Par conséquent, lorsque l'utilisateur clique sur le sprite square, le sprite circle distribue un événement click :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);

var square:Sprite = new Sprite();
square.graphics.beginFill(0xCCFF00);
square.graphics.drawRect(200, 0, 100, 100);

circle.hitArea = square;
square.mouseEnabled = false;

circle.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void{
    trace(event.target == circle); // true
    trace(event.target == square); // false
}

addChild(circle);
addChild(square);
soundTransformpropriété 
soundTransform:SoundTransform  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Contrôle le son à l'intérieur du sprite.



Implémentation
    public function get soundTransform():SoundTransform
    public function set soundTransform(value:SoundTransform):void

Voir aussi


Exemple
L'exemple suivant crée un sprite appelé container et ajoute un objet Loader à sa liste enfant. L'objet Loader charge un fichier SWF. Lorsque l'utilisateur clique sur le champ de texte tf, true. La méthode mute() définit la propriété volume de la propriété soundTransform du sprite container :
import flash.display.Sprite;
import flash.display.Loader;
import flash.events.IOErrorEvent;
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.media.SoundTransform;

var container:Sprite = new Sprite();
addChild(container);

var ldr:Loader = new Loader;
var urlReq:URLRequest = new URLRequest("SoundPlayer.swf");
ldr.load(urlReq);

container.addChild(ldr);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound);
            
var tf:TextField = new TextField();
tf.htmlText = "<a href = 'event:Mute'>Mute / Unmute</a>";
addChild(tf);

var mySoundTransform:SoundTransform = new SoundTransform();
mySoundTransform.volume = 1;

tf.addEventListener(MouseEvent.CLICK, mute);

function mute(event:MouseEvent):void {    
    if (mySoundTransform.volume == 0) {
        mySoundTransform.volume = 1;
    } else {
        mySoundTransform.volume = 0;        
    }
    container.soundTransform = mySoundTransform;
}

function urlNotFound(event:IOErrorEvent):void {
    trace("The URL was not found."); 
}
useHandCursorpropriété 
useHandCursor:Boolean  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Valeur booléenne indiquant si le curseur en forme de main apparaît lorsque la souris survole un sprite dont la propriété buttonMode est réglée sur true. La valeur par défaut de la propriété useHandCursor est true. Si la propriété useHandCursor est définie sur true, le curseur en forme de main utilisé pour les boutons s'affiche lorsque la souris survole un sprite. Si la propriété useHandCursor est définie sur false, le pointeur flèche est utilisé.

Vous pouvez modifier la propriété useHandCursor à tout moment ; le sprite modifié accepte immédiatement la nouvelle apparence du curseur.



Implémentation
    public function get useHandCursor():Boolean
    public function set useHandCursor(value:Boolean):void

Voir aussi


Exemple
L'exemple suivant crée deux sprites et définit la propriété buttonMode sur true pour les deux, cependant il définit la propriété useHandCursor sur true pour l'un et sur false pour l'autre. Lorsque vous compilez et exécutez l'application, les deux sprites se comportent en tant que bouton et sont inclus dans l'ordre de tabulation, mais seul celui où useHandCursor est défini sur true a recours au curseur en forme de main :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);
circle1.buttonMode = true;
circle1.useHandCursor = true;
circle1.addEventListener(MouseEvent.CLICK, clicked);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0xFFCC00);
circle2.graphics.drawCircle(120, 40, 40);
circle2.buttonMode = true;
circle2.useHandCursor = false;
circle2.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void {
    trace ("Click!");
}

addChild(circle1);
addChild(circle2);
Détails du constructeur
Sprite()Constructeur
public function Sprite()

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Crée une occurrence de Sprite. Une fois l'occurrence de Sprite créée, appelez la méthode DisplayObjectContainer.addChild() ou DisplayObjectContainer.addChildAt() pour ajouter le sprite à une occurrence de l'objet DisplayObjectContainer parent.

Détails de la méthode
startDrag()méthode
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Permet à l'utilisateur de faire glisser le sprite spécifié. Il reste possible de faire glisser le sprite jusqu'à l'arrêt explicite de cette action par un appel à la méthode Sprite.stopDrag() ou lorsqu'un autre sprite est rendu déplaçable. Vous ne pouvez déplacer qu'un seul sprite à la fois.

Les objets d'affichage tridimensionnels suivent la souris et la méthode Sprite.startDrag() déplace l'objet dans le plan tridimensionnel défini par l'objet d'affichage. Si l'objet d'affichage est un objet bidimensionnel et l'enfant d'un objet tridimensionnel, l'objet bidimensionnel se déplace dans le plan tridimensionnel défini par l'objet parent tridimensionnel.

Paramètres

lockCenter:Boolean (default = false) — Spécifie si le sprite à déplacer doit être verrouillé au centre de la position de la souris (true) ou verrouillé au point où l'utilisateur a cliqué sur le sprite en premier lieu (false ).
 
bounds:Rectangle (default = null) — Valeur relative aux coordonnées du parent du sprite qui spécifie un rectangle de délimitation pour le sprite.

Voir aussi


Exemple

L'exemple suivant crée un sprite circle et deux sprites target. La méthode startDrag() est appelée sur le sprite circle lorsque l'utilisateur place le curseur sur le sprite et appuie sur le bouton de la souris, et lorsque la méthode stopDrag() est appelée si l'utilisateur relâche le bouton de la souris. Cette opération permet de faire glisser le sprite. Lorsque l'utilisateur relâche le bouton de sa souris, la méthode mouseRelease() est appelée, qui en retour suit la propriété name de l'objet dropTarget — celui vers lequel l'utilisateur fait glisser le sprite circle :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);

var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";

var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";

addChild(target1);
addChild(target2);
addChild(circle);

circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) 

function mouseDown(event:MouseEvent):void {
    circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);

function mouseReleased(event:MouseEvent):void {
    circle.stopDrag();
    trace(circle.dropTarget.name);
}
stopDrag()méthode 
public function stopDrag():void

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Met fin à la méthode startDrag(). Un sprite qu'il est possible de déplacer grâce à la méthode startDrag() reste déplaçable jusqu'à ce qu'une autre méthode stopDrag() soit ajoutée, ou jusqu'à ce qu'un autre sprite devienne déplaçable. Vous ne pouvez déplacer qu'un seul sprite à la fois.

Voir aussi


Exemple

L'exemple suivant crée un sprite circle et deux sprites target. La méthode startDrag() est appelée sur le sprite circle lorsque l'utilisateur place le curseur sur le sprite et appuie sur le bouton de la souris, et lorsque la méthode stopDrag() est appelée si l'utilisateur relâche le bouton de la souris. Cette opération permet de faire glisser le sprite. Lorsque l'utilisateur relâche le bouton de sa souris, la méthode mouseRelease() est appelée, qui en retour suit la propriété name de l'objet dropTarget — celui vers lequel l'utilisateur fait glisser le sprite circle :
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);

var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";

var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";

addChild(target1);
addChild(target2);
addChild(circle);

circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) 

function mouseDown(event:MouseEvent):void {
    circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);

function mouseReleased(event:MouseEvent):void {
    circle.stopDrag();
    trace(circle.dropTarget.name);
}
Exemples Utilisation des exemples
SpriteExample.as

L'exemple suivant utilise la classe SpriteExample pour dessiner un carré orange sur la scène, puis distribue les événements que lorsque l'utilisateur clique ou fait glisser le carré. Pour ce faire, procédez comme suit :
  1. Déclarez la propriété size (100 x 100 pixels) et la couleur de fond (orange) pour une exploitation ultérieure lors du dessin du carré.
  2. Le constructeur crée ensuite un nouvel objet Sprite child et l'utilise pour ajouter deux écouteurs d'événement et leurs méthodes associées : mouseDownHandler() et mouseUpHandler().
  3. L'objet Sprite child est ensuite transmis à la méthode draw(), qui dessine le carré orange.
  4. L'enfant est ensuite placé dans la liste d'affichage grâce à un appel à la méthode addChild().
  5. Les écouteurs d'événement fonctionnent de la façon suivante :
    • mouseDownHandler() : lorsque l'utilisateur clique sur l'objet Sprite, cette méthode ajoute un écouteur d'événement mouseMove, la méthode mouseMoveHandler(), qui traite les mouvements de la souris. La méthode startDrag() est ensuite appelée et permet de faire glisser l'objet Sprite.
    • mouseUpHandler() : lorsque le bouton de la souris est relâché, l'écouteur d'événement mouseMove est supprimé et la méthode stopDrag() est appelée, ce qui fige le carré orange.
    • mouseMoveHandler : tant que le bouton gauche de la souris reste enfoncé, cette méthode demande au lecteur de redessiner en continu le carré orange.

Remarque : chacune des méthodes de l'écouteur d'événement déclare une variable sprite locale, qui se voit affecter la propriété target de l'événement.

package {
    import flash.display.Sprite;
    import flash.events.*;

    public class SpriteExample extends Sprite {
        private var size:uint    = 100;
        private var bgColor:uint = 0xFFCC00;

        public function SpriteExample() {
            var child:Sprite = new Sprite();
            child.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
            child.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
            draw(child);
            addChild(child);
        }

        private function mouseDownHandler(event:MouseEvent):void {
            trace("mouseDownHandler");
            var sprite:Sprite = Sprite(event.target);
            sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
            sprite.startDrag();
        }

        private function mouseUpHandler(event:MouseEvent):void {
            trace("mouseUpHandler");
            var sprite:Sprite = Sprite(event.target);
            sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
            sprite.stopDrag();
        }

        private function mouseMoveHandler(event:MouseEvent):void {
            trace("mouseMoveHandler");
            event.updateAfterEvent();
        }

        private function draw(sprite:Sprite):void {
            sprite.graphics.beginFill(bgColor);
            sprite.graphics.drawRect(0, 0, size, size);
            sprite.graphics.endFill();
        }
    }
}