ActionScript® 3.0 Referenzhandbuch für die Adobe® Flash®-Plattform
Home  |  Liste der Pakete und Klassen ausblenden |  Pakete  |  Klassen  |  Neue Funktionen  |  Stichwortverzeichnis  |  Anhänge  |  Warum auf Englisch?
Filter: Daten werden vom Server abgerufen...
Daten werden vom Server abgerufen...
flash.ui 

Mouse  - AS3

Paketflash.ui
Klassepublic final class Mouse
VererbungMouse Inheritance Object

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Die Methoden der Mouse-Klasse werden dazu verwendet, den Mauszeiger ein- oder auszublenden oder seinen Stil festzulegen. Die Mouse-Klasse ist eine Klasse der obersten Ebene, auf deren Eigenschaften und Methoden ohne Verwendung eines Konstruktors zugegriffen werden kann. Der Mauszeiger ist in der Standardeinstellung sichtbar. Sie können ihn jedoch ausblenden und einen benutzerdefinierten Mauszeiger implementieren.

Beispiele anzeigen

Verwandte API-Elemente



Öffentliche Eigenschaften
 EigenschaftDefiniert von
 Inheritedconstructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
Object
  cursor : String
[statisch] Der Name des nativen Cursors.
Mouse
  supportsCursor : Boolean
[statisch] [schreibgeschützt] Gibt an, ob der Computer oder das Gerät einen bleibenden Cursor anzeigt.
Mouse
  supportsNativeCursor : Boolean
[statisch] [schreibgeschützt] Gibt an, ob die aktuelle Konfiguration native Cursor unterstützt.
Mouse
Öffentliche Methoden
 MethodeDefiniert von
 Inherited
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
Object
  
[statisch] Blendet den Mauszeiger aus.
Mouse
 Inherited
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
Object
 Inherited
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
Object
  
[statisch] Registriert einen nativen Mauszeiger unter dem angegebenen Namen mit den angegebenen Daten.
Mouse
 Inherited
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
Object
  
[statisch] Zeigt den Mauszeiger an.
Mouse
 Inherited
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas.
Object
 Inherited
Gibt das angegebene Objekt als String zurück.
Object
  
[statisch] Hebt die Registrierung des nativen Cursors mit dem angegebenen Namen auf.
Mouse
 Inherited
Gibt den Grundwert des angegebenen Objekts zurück.
Object
Eigenschaftendetails

cursor

Eigenschaft
cursor:String

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 10.2, AIR 1.5

Der Name des nativen Cursors.



Implementierung
    public static function get cursor():String
    public static function set cursor(value:String):void

supportsCursor

Eigenschaft 
supportsCursor:Boolean  [schreibgeschützt]

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 10.1, AIR 2

Gibt an, ob der Computer oder das Gerät einen bleibenden Cursor anzeigt.

Die supportsCursor-Eigenschaft hat für die meisten Desktopcomputer den Wert true und für die meisten mobilen Geräte den Wert false.

Hinweis: Mausereignisse können abgesetzt werden, unabhängig davon, ob diese Eigenschaft den Wert true hat oder nicht. Je nach den physischen Merkmalen des Zeigegeräts verhalten sich Mausereignisse unter Umständen jedoch unterschiedlich.



Implementierung
    public static function get supportsCursor():Boolean

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )
Das folgende Beispiel ist ein einfacher Test, der angibt, ob aktuell ein bleibender Cursor unterstützt wird. Klicken Sie beim Testen dieses Beispiels auf das Textfeld, um den Eigenschaftswert zu sehen:
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);

}
Das folgende Beispiel testet und reagiert auf verschiedene Benutzereingabeumgebungen. Bei diesem Beispiel wird davon ausgegangen, dass es Teil des Codes für ein Spiel ist, in dem der Cursor verwendet wird. Zuerst testet das Beispiel, ob die Umgebung einen Cursor unterstützt. Ist dies nicht der Fall, wird getestet, ob die Umgebung die Interaktion mit einem Eingabestift unterstützt. Ist dies der Fall, kann Code eingefügt werden, um das Spiel an die Verwendung eines Eingabestifts anzupassen. Falls die Umgebung die Fingereingabe unterstützt, kann Code eingefügt werden, um das Programm für die spezifischen Anforderungen der Fingereingabe anzupassen. Wenn gar keine Zeigegeräte unterstützt werden, muss der Entwickler alternative Cursor oder andere Interaktionswege, zum Beispiel Tastatureingaben, erstellen.
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

Eigenschaft 
supportsNativeCursor:Boolean  [schreibgeschützt]

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 10.2, AIR 1.5

Gibt an, ob die aktuelle Konfiguration native Cursor unterstützt.



Implementierung
    public static function get supportsNativeCursor():Boolean
Methodendetails

hide

()Methode
public static function hide():void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Blendet den Mauszeiger aus. In der Standardeinstellung ist der Mauszeiger sichtbar.

Hinweis: Sie brauchen Mouse.hide() nur einmal aufzurufen, unabhängig davon, wie oft zuvor Mouse.show() aufgerufen wurde.

Verwandte API-Elemente

registerCursor

()Methode 
public static function registerCursor(name:String, cursor:MouseCursorData):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 10.2, AIR 1.5

Registriert einen nativen Mauszeiger unter dem angegebenen Namen mit den angegebenen Daten.

Parameter

name:String
 
cursor:MouseCursorData

show

()Methode 
public static function show():void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Zeigt den Mauszeiger an. In der Standardeinstellung ist der Mauszeiger sichtbar.

Hinweis: Sie brauchen Mouse.show() nur einmal aufzurufen, unabhängig davon, wie oft zuvor Mouse.hide() aufgerufen wurde.

Verwandte API-Elemente

unregisterCursor

()Methode 
public static function unregisterCursor(name:String):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 10.2, AIR 1.5

Hebt die Registrierung des nativen Cursors mit dem angegebenen Namen auf.

Parameter

name:String

MouseExample.as

Im folgenden Beispiel werden die Klassen MouseExample, SimpleButton, ButtonDisplayState und CustomCursor zur Positionierung einer einfachen Schaltfläche auf der Bühne verwendet. Die Schaltfläche verfügt über einen benutzerdefinierten Mauszeiger und verändert sich, wenn Sie darauf klicken. Dies wird in den folgenden Schritten erreicht:
  1. Deklarieren Sie die folgenden Instanzeigenschaften: cursor des Typs „CustomCursor“, child des Typs „CustomButton“ und gutter des Typs „uint“.
  2. Weisen Sie child einer neuen CustomButton-Instanz zu, setzen Sie deren x- und y-Koordinaten auf jeweils 10 Pixel, und fügen Sie die Instanz anschließend der Anzeigeliste hinzu. Die CustomButton-Klasse setzt die Eigenschaften downState, upState, overState und hitTestState in „SimpleButton“ außer Kraft. Durch jede dieser Eigenschaften wird ein ButtonDisplayState-Objekt instanziiert, das in Abhängigkeit vom Status der child-Instanz ein anderes Quadrat zeichnet.
  3. Die child-Instanz wird anschließend verwendet, um einen MOUSE_OVER-Ereignis-Listener und eine mouseOverHandler()-Listener-Methode mit einem MOUSE_OUT-Ereignis-Listener und der verknüpften mouseOutHandler()-Methode hinzuzufügen.
  4. Die Ereignis-Listener funktionieren wie folgt:
    • mouseOverHandler: Blendet den „normalen“ Mauszeiger aus und fügt einen MOUSE_MOVE-Listener hinzu, der die Mausbewegungen mit dem mouseMoveHandler() verarbeitet (Beschreibung siehe unten).
    • mouseOutHandler: Wenn die Maus den Bereich der benutzerdefinierten Schaltfläche verlässt, wird der „normale“ Mauszeiger eingeblendet, der MOUSE_MOVE-Ereignis-Listener wird entfernt, und die Sichtbarkeit des benutzerdefinierten Cursors wird auf false gesetzt.
    • mouseMoveHandler: Bewegt den benutzerdefinierten Cursor an die Stelle, an die der Mauszeiger bewegt wird, und setzt die Sichtbarkeit des benutzerdefinierten Cursors auf true.
  5. Im MouseExample-Konstruktor wird die Cursor-Eigenschaft einem neuen CustomCursor-Objekt zugewiesen und anschließend mit addChild() der Anzeigeliste hinzugefügt. Mit der CustomCursor-wird eine kleines nahezu schwarzes Quadrat statt des „normalen“ Mauszeigers gezeichnet, wenn die Maus sich über child befindet.
  6. Ein vierter Ereignis-Listener des Typs MOUSE_LEAVE wird mit der verknüpften mouseLeaveHandler()-Methode hinzugefügt. In dieser Methode (die aufgerufen wird, wenn die Maus die Bühne verlässt), wird dem mouseOutHandler() ein neues mouseMove-Listener-Objekt übergeben, das den Mauszeiger vollständig von der Bühne entfernt.
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 ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

Nicht alle Teile des ActionScript 3.0-Referenzhandbuchs wurden in alle Sprachen übersetzt. Wenn der Text zu einem Sprachelement nicht übersetzt wurde, wird er auf Englisch angezeigt. Zum Beispiel wurden die Informationen zur ga.controls.HelpBox-Klasse nicht in andere Sprachen übersetzt. In der deutschen Version des Referenzhandbuchs erscheint der Abschnitt zur ga.controls.HelpBox-Klasse deshalb auf Englisch.