Guide de référence ActionScript® 3.0 pour la plate-forme Adobe® Flash®
Accueil  |  Masquer la liste des packages et des classes |  Packages  |  Classes  |  Nouveautés  |  Index  |  Annexes  |  Pourquoi existe-t-il du contenu en anglais ?
Filtres : Récupération des données du serveur...
Récupération des données du serveur...
flash.ui 

Mouse  - AS3

Packageflash.ui
Classepublic final class Mouse
HéritageMouse Inheritance Object

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

Les méthodes de la classe Mouse permettent de masquer et d’afficher le pointeur de la souris ou de définir un style spécifique pour le pointeur. La classe Mouse est une classe de niveau supérieur dont les propriétés et les méthodes sont accessibles sans l’aide d’un constructeur. Le pointeur est visible par défaut, mais vous pouvez le masquer et mettre en place un pointeur personnalisé.

Consulter les exemples

Plus d’exemples

Informations complémentaires

Eléments de l’API associés



Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet.
Object
  cursor : String
[statique] Nom du curseur natif.
Mouse
  supportsCursor : Boolean
[statique] [lecture seule] Indique si l’ordinateur ou le périphérique affiche un curseur permanent.
Mouse
  supportsNativeCursor : Boolean
[statique] [lecture seule] Indique si la configuration actuelle prend en charge les curseurs natifs.
Mouse
Méthodes publiques
 MéthodeDéfini par
 Inherited
Indique si la propriété spécifiée d’un objet est définie.
Object
  
[statique] Masque le pointeur.
Mouse
 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
Indique si la propriété spécifiée existe et est énumérable.
Object
  
[statique] Enregistre le curseur natif sous le nom donné avec les données spécifiées.
Mouse
 Inherited
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle.
Object
  
[statique] Affiche le pointeur.
Mouse
 Inherited
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l’objet spécifié.
Object
  
[statique] Annule l’inscription du curseur natif avec le nom donné.
Mouse
 Inherited
Renvoie la valeur primitive de l’objet spécifié.
Object
Détails de la propriété

cursor

propriété
cursor:String

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10.2, AIR 1.5

Nom du curseur natif.



Implémentation
    public static function get cursor():String
    public static function set cursor(value:String):void

supportsCursor

propriété 
supportsCursor:Boolean  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10.1, AIR 2

Indique si l’ordinateur ou le périphérique affiche un curseur permanent.

La propriété supportsCursor est définie sur true sur la plupart des ordinateurs de bureau et sur false sur la plupart des périphériques mobiles.

Remarque : les événements de souris peuvent être distribués ou non si cette propriété est définie sur true. Il est toutefois possible que les événements de souris se comportent différemment selon les caractéristiques physiques du périphérique de pointage.



Implémentation
    public static function get supportsCursor():Boolean

Eléments de l’API associés


Exemple  ( Comment utiliser cet exemple )
L'exemple suivant est un test simple qui indique la prise en charge actuelle d'un curseur permanent, ou non. Lors du test de cet exemple, cliquez sur la zone de texte pour afficher la valeur de la propriété :
import flash.events.*;
import flash.display.*;
import flash.ui.Mouse;
import flash.text.TextField;

var supportsCursorTxt:TextField = new TextField();
supportsCursorTxt.width = 200;
supportsCursorTxt.border = true;
addChild(supportsCursorTxt);

addEventListener (MouseEvent.CLICK, getScreenKeyboardType);

function getScreenKeyboardType(e:MouseEvent):void{
    supportsCursorTxt.text= "Supports Cursor is : " + String(flash.ui.Mouse.supportsCursor);

}
L’exemple suivant teste et répond aux différents environnements de saisie utilisateur. Cet exemple part du principe qu’il s’agit de la partie du code d’un jeu ayant recours à un curseur. Dans un premier temps, l’exemple vérifie si l’environnement prend en charge un curseur. Si ce n’est pas le cas, il vérifie ensuite si l’environnement prend en charge l’interaction avec un stylet. Le cas échéant, il est possible d’insérer du code pour personnaliser le jeu afin d’utiliser le stylet. Si l’environnement prend en charge l’interaction tactile avec les doigts, il est possible d’insérer du code pour personnaliser le programme en vue de répondre aux besoins spécifiques des appuis avec les doigts. Si aucun périphérique de pointage n’est pris en charge, le développeur doit créer d’autres curseurs ou moyens d’interaction, comme l’activation de touches.
if(Mouse.supportsCursor) {
    //Game acts as before
} else {
    if(Capabilities.touchscreenType == TouchscreenType.STYLUS ){
        //The Game has to change so that the character is chasing the location of the stylus as 
        //it's dragged around. Some of the animations will have to change
    }else if(Capabilities.touchscreenType = TouchscreenType.FINGER){
        //Same as above, except that the hit-area is larger for a finger.
    }else{
        //There's no pointing device at all. The developer designs some sort of custom cursor to 
        //be controlled with key presses or similar input
    }
}

supportsNativeCursor

propriété 
supportsNativeCursor:Boolean  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10.2, AIR 1.5

Indique si la configuration actuelle prend en charge les curseurs natifs.



Implémentation
    public static function get supportsNativeCursor():Boolean
Détails de la méthode

hide

()méthode
public static function hide():void

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

Masque le pointeur. Le pointeur est visible par défaut.

Remarque : vous ne devez appeler Mouse.hide() qu’une seule fois, quel que soit le nombre d’appels à Mouse.show() précédents.

Eléments de l’API associés

registerCursor

()méthode 
public static function registerCursor(name:String, cursor:MouseCursorData):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10.2, AIR 1.5

Enregistre le curseur natif sous le nom donné avec les données spécifiées.

Paramètres

name:String
 
cursor:MouseCursorData

show

()méthode 
public static function show():void

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

Affiche le pointeur. Le pointeur est visible par défaut.

Remarque : vous ne devez appeler Mouse.show() qu’une seule fois, quel que soit le nombre d’appels à Mouse.hide() précédents.

Eléments de l’API associés

unregisterCursor

()méthode 
public static function unregisterCursor(name:String):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10.2, AIR 1.5

Annule l’inscription du curseur natif avec le nom donné.

Paramètres

name:String

MouseExample.as

L’exemple suivant utilise les classes MouseExample, SimpleButton, ButtonDisplayState et CustomCursor pour placer un bouton simple sur la scène. Celui-ci présente un pointeur personnalisé, et il se modifie lorsqu’il est cliqué. Cette opération s’accomplit de la façon suivante :
  1. Les propriétés d’occurrence suivantes sont déclarées : cursor de type CustomCursor, child de type CustomButton et gutter de type uint.
  2. child est attribuée à une nouvelle occurrence de CustomButton, ses coordonnées x et y sont définies sur 10 pixels chacun, puis l’occurrence est ajoutée à la liste d’affichage. La classe CustomButton remplace les propriétés downState, upState, overState et hitTestState dans SimpleButton. Chacune de ces propriétés instancie un objet ButtonDisplayState qui dessine un carré différent, en fonction de l’état de l’occurrence child.
  3. L’occurrence child est ensuite utilisée pour ajouter un écouteur d’événement MOUSE_OVER et une méthode d’écouteur mouseOverHandler() à un écouteur d’événement MOUSE_OUT associé à la méthode mouseOutHandler().
  4. Les écouteurs d’événements fonctionnent de la façon suivante :
    • mouseOverHandler : masque le pointeur « normal » et ajoute un écouteur MOUSE_MOVE qui assure le traitement des mouvements de la souris à l’aide de mouseMoveHandler(), comme décrit ci-dessous.
    • mouseOutHandler : lorsque la souris se déplace à l’extérieur du bouton personnalisé, le pointeur « normal » s’affiche, l’écouteur d’événements MOUSE_MOVE est supprimé et la visibilité du curseur personnalisé est définie sur false.
    • mouseMoveHandler : déplace le curseur personnalisé dans la zone où le pointeur est déplacé et définit la visibilité du curseur personnalisé sur true.
  5. Au niveau du constructeur MouseExample, la propriété du curseur est attribuée à un nouvel objet CustomCursor qui est ensuite ajouté à la liste d’affichage par l’intermédiaire de addChild(). La classe CustomCursor dessine un petit carré de couleur presque noire à la place du pointeur habituel chaque fois que la souris est positionnée au-dessus de child.
  6. Un quatrième écouteur d’événements de type MOUSE_LEAVE est ajouté avec la méthode associée mouseLeaveHandler(). Dans cette méthode (appelée si la souris quitte la scène), mouseOutHandler() reçoit un nouvel objet d’écouteur transmis, mouseMove, qui supprime principalement le pointeur pour le faire disparaître de la scène.
package {
    import flash.display.Sprite;
    import flash.display.DisplayObject;
    import flash.ui.Mouse;
    import flash.events.*;

    public class MouseExample extends Sprite {
         private var cursor:CustomCursor;
         private var child:CustomButton;
         private var gutter:uint = 10;

        public function MouseExample() {
            child = new CustomButton();
            child.x = gutter;
            child.y = gutter;
            addChild(child);

            child.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
            child.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);

            cursor = new CustomCursor();
            addChild(cursor);

            stage.addEventListener(Event.MOUSE_LEAVE, mouseLeaveHandler);
        }

        private function mouseOverHandler(event:MouseEvent):void {
            trace("mouseOverHandler");
            Mouse.hide();
            child.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
        }

        private function mouseOutHandler(event:MouseEvent):void {
            trace("mouseOutHandler");
            Mouse.show();
            child.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
            cursor.visible = false;
        }

        private function mouseMoveHandler(event:MouseEvent):void {
            trace("mouseMoveHandler");
            cursor.x = event.localX;
            cursor.y = event.localY;
            event.updateAfterEvent();
            cursor.visible = true;
        }

        private function mouseLeaveHandler(event:Event):void {
            trace("mouseLeaveHandler");
            mouseOutHandler(new MouseEvent(MouseEvent.MOUSE_MOVE));
        }
    }
}

import flash.display.Shape;
import flash.display.SimpleButton;
    
class CustomButton extends SimpleButton {
    var upColor:uint = 0xFFCC00;
    var overColor:uint = 0xCCFF00;
    var downColor:uint = 0x00CCFF;
    var size:uint = 80;
    
    public function CustomButton() {
        downState = new ButtonDisplayState(downColor, size+10);
        overState = new ButtonDisplayState(overColor, size);
        upState = new ButtonDisplayState(upColor, size);
        hitTestState = new ButtonDisplayState(upColor, size);
    }
}

class ButtonDisplayState extends Shape {
    var bgColor:uint;
    var size:uint;
    
    public function ButtonDisplayState(bgColor:uint, size:uint) {
        this.bgColor = bgColor;
        this.size = size;
        draw();
    }
    
    private function draw():void {
        graphics.clear();
        graphics.beginFill(bgColor);
        graphics.drawRect(0, 0, size, size);
        graphics.endFill();
    }
}
    
class CustomCursor extends Shape {
    var bgColor:uint = 0x333333;
    var size:uint = 10;
    
    public function CustomCursor() {
        visible = false;
        draw();
    }
    
    private function draw():void {
        graphics.clear();
        graphics.beginFill(bgColor);
        graphics.drawRect(0, 0, size, size);
        graphics.endFill();
    }
}




[ X ]Pourquoi existe-t-il du contenu en anglais ?
Certaines parties du Guide de référence ActionScript 3.0 sont en anglais

Tout le contenu du Guide de référence ActionScript 3.0 n’a pas été traduit dans toutes les langues. Si un élément de langage n’est pas traduit, il s’affiche en anglais. Par exemple, la classe ga.controls.HelpBox n’est traduite dans aucune langue. Ainsi, dans la version française du guide de référence, la classe ga.controls.HelpBox apparaît en anglais.