| Paket | flash.display |
| Klasse | public class Sprite |
| Vererbung | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| Unterklassen | FLVPlayback, FLVPlaybackCaptioning, MovieClip, UIComponent |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ein Sprite-Objekt ähnelt einem Movieclip, besitzt aber keine Zeitleiste. Sprite ist die angemessene Basisklasse für Objekte, die keine Zeitleiste benötigen. So wäre Sprite etwa die logische Basisklasse für Komponenten der Benutzeroberfläche (UI, User Interface), die in der Regel keine Zeitleiste verwenden.
Die Sprite-Klasse ist neu in ActionScript 3.0. Sie bietet eine Alternative zur Funktionalität der MovieClip-Klasse, die die gesamte Funktionalität früherer ActionScript-Versionen beibehält, um die Abwärtskompatibilität zu gewährleisten.
Siehe auch
| Eigenschaft | Definiert von | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
Die aktuellen Eingabehilfenoptionen für dieses Anzeigeobjekt.
| DisplayObject | |
![]() | alpha : Number
Gibt den Alphatransparenzwert des angegebenen Objekts an.
| DisplayObject | |
![]() | blendMode : String
Ein Wert aus der BlendMode-Klasse, mit dem angegeben wird, welcher Mischmodus verwendet werden soll.
| DisplayObject | |
| buttonMode : Boolean
Legt den Schaltflächenmodus für dieses Sprite fest.
| Sprite | ||
![]() | cacheAsBitmap : Boolean
Wird diese Eigenschaft auf "true" gesetzt, speichert Flash Player eine interne Bitmap-Darstellung des Anzeigeobjekts im Cache.
| DisplayObject | |
![]() | constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
| Object | |
![]() | contextMenu : ContextMenu
Gibt das diesem Objekt zugeordnete Kontextmenü an.
| InteractiveObject | |
![]() | doubleClickEnabled : Boolean
Gibt an, ob das Objekt doubleClick-Ereignisse empfängt.
| InteractiveObject | |
| dropTarget : DisplayObject
[read-only] Gibt das Anzeigeobjekt an, über das der Sprite gezogen wird oder auf dem der Sprite abgelegt wurde.
| Sprite | ||
![]() | filters : Array
Ein indiziertes Array, das alle dem Anzeigeobjekt derzeit zugeordneten filter-Objekte enthält.
| DisplayObject | |
![]() | focusRect : Object
Gibt an, ob für dieses Objekt ein Fokus-Rechteck angezeigt wird.
| InteractiveObject | |
| graphics : Graphics
[read-only] Legt das Graphics-Objekt fest, das zu diesem Sprite gehört und für das Vektorzeichnungsbefehle zulässig sind.
| Sprite | ||
![]() | height : Number
Gibt die Höhe des Anzeigeobjekts in Pixel an.
| DisplayObject | |
| hitArea : Sprite
Gibt als Kollisionsbereich für ein Sprite ein anderes Sprite an.
| Sprite | ||
![]() | loaderInfo : LoaderInfo
[read-only] Gibt ein LoaderInfo-Objekt mit Informationen zum Laden der Datei zurück, zu der dieses Anzeigeobjekt gehört.
| DisplayObject | |
![]() | mask : DisplayObject
Das aufrufende Anzeigeobjekt wird durch das angegebene mask-Objekt maskiert.
| DisplayObject | |
![]() | mouseChildren : Boolean
Bestimmt, ob die dem Objekt untergeordneten Objekte per Maus aktivierbar sind.
| DisplayObjectContainer | |
![]() | mouseEnabled : Boolean
Gibt an, ob dieses Objekt Meldungen von der Maus empfängt.
| InteractiveObject | |
![]() | mouseX : Number
[read-only] Gibt die x-Koordinate der Mausposition in Pixel an.
| DisplayObject | |
![]() | mouseY : Number
[read-only] Gibt die y-Koordinate der Mausposition in Pixel an.
| DisplayObject | |
![]() | name : String
Gibt den Instanznamen des Anzeigeobjekts an.
| DisplayObject | |
![]() | numChildren : int
[read-only] Liefert die Anzahl der Objekte, die diesem Objekt untergeordnet sind.
| DisplayObjectContainer | |
![]() | opaqueBackground : Object
Legt fest, ob das Anzeigeobjekt bei einer bestimmten Hintergrundfarbe undurchsichtig ist.
| DisplayObject | |
![]() | parent : DisplayObjectContainer
[read-only] Gibt das DisplayObjectContainer-Objekt an, das dieses Anzeigeobjekt enthält.
| DisplayObject | |
![]() | prototype : Object
[static] Ein Verweis auf das Prototypobjekt einer Klasse oder eines Funktionsobjekts.
| Object | |
![]() | root : DisplayObject
[read-only] Bei einem Anzeigeobjekt in einer geladenen SWF-Datei ist die root-Eigenschaft das oberste Anzeigeobjekt in dem Teil der Baumstruktur der Anzeigeliste, der diese SWF-Datei repräsentiert.
| DisplayObject | |
![]() | rotation : Number
Gibt die Drehung der DisplayObject-Instanz ausgehend von der ursprünglichen Ausrichtung in Grad an.
| DisplayObject | |
![]() | scale9Grid : Rectangle
Das aktuell verwendete Skalierungsraster.
| DisplayObject | |
![]() | scaleX : Number
Gibt die horizontale Skalierung (percentage) des Objekts ausgehend vom Registrierungspunkt an.
| DisplayObject | |
![]() | scaleY : Number
Gibt die vertikale Skalierung (percentage) eines Objekts ausgehend vom Registrierungspunkt an.
| DisplayObject | |
![]() | scrollRect : Rectangle
Die Begrenzungen des Bildlaufrechtecks für das Anzeigeobjekt.
| DisplayObject | |
| soundTransform : SoundTransform
Steuert den Sound innerhalb dieses Sprites.
| Sprite | ||
![]() | stage : Stage
[read-only] Die Bühne des Anzeigeobjekts.
| DisplayObject | |
![]() | tabChildren : Boolean
Bestimmt, ob die dem Objekt untergeordneten Objekte per Tabulatortaste aktivierbar sind.
| DisplayObjectContainer | |
![]() | tabEnabled : Boolean
Gibt an, ob sich dieses Objekt in der Tabulatorreihenfolge befindet.
| InteractiveObject | |
![]() | tabIndex : int
Gibt die Tabulatorreihenfolge von Objekten in einer SWF-Datei an.
| InteractiveObject | |
![]() | textSnapshot : TextSnapshot
[read-only] Liefert ein TextSnapshot-Objekt für diese DisplayObjectContainer-Instanz.
| DisplayObjectContainer | |
![]() | transform : Transform
Ein Objekt mit Eigenschaften, die zur Matrix, Farbtransformation und Pixelbegrenzung eines Anzeigeobjekts gehören.
| DisplayObject | |
| useHandCursor : Boolean
Ein boolescher Wert, der angibt, ob der Handcursor angezeigt werden soll, wenn die Maus über ein Sprite-Objekt geführt wird, dessen buttonMode-Eigenschaft auf "true" gesetzt ist.
| Sprite | ||
![]() | visible : Boolean
Gibt an, ob das Anzeigeobjekt sichtbar ist oder nicht.
| DisplayObject | |
![]() | width : Number
Gibt die Breite des Anzeigeobjekts in Pixel an.
| DisplayObject | |
![]() | x : Number
Gibt die x-Koordinate der DisplayObject-Instanz relativ zu den lokalen Koordinaten des übergeordneten DisplayObjectContainer-Objekts an.
| DisplayObject | |
![]() | y : Number
Gibt die y-Koordinate der DisplayObject-Instanz relativ zu den lokalen Koordinaten des übergeordneten DisplayObjectContainer-Objekts an.
| DisplayObject | |
| Methode | Definiert von | ||
|---|---|---|---|
|
Sprite()
Erstellt eine neue Sprite-Instanz.
| Sprite | ||
![]() |
Fügt dieser DisplayObjectContainer-Instanz eine untergeordnete DisplayObject-Instanz hinzu.
| DisplayObjectContainer | |
![]() |
Fügt dieser DisplayObjectContainer-Instanz eine untergeordnete DisplayObject-Instanz hinzu.
| DisplayObjectContainer | |
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registriert ein Ereignis-Listener-Objekt bei einem EventDispatcher-Objekt, sodass der Listener über ein Ereignis benachrichtigt wird.
| EventDispatcher | |
![]() |
Gibt an, ob aufgrund der Sicherheitseinschränkungen irgendwelche Anzeigeobjekte aus der Liste ausgeschlossen werden, die beim Aufrufen der DisplayObjectContainer.getObjectsUnderPoint()-Methode mit dem angegebenen point-Punkt zurückgegeben wird.
| DisplayObjectContainer | |
![]() |
Ermittelt, ob das angegebene Anzeigeobjekt der DisplayObjectContainer-Instanz oder der Instanz selbst untergeordnet ist.
| DisplayObjectContainer | |
![]() |
Sendet ein Ereignis in den Ereignisablauf.
| EventDispatcher | |
![]() |
Gibt ein Rechteck zurück, das den Bereich des Anzeigeobjekts in Bezug auf das Koordinatensystem des targetCoordinateSpace-Objekts definiert.
| DisplayObject | |
![]() |
Gibt die untergeordnete Anzeigeobjektinstanz zurück, die sich an der angegebenen Indexposition befindet.
| DisplayObjectContainer | |
![]() |
Gibt das untergeordnete Anzeigeobjekt für den angegebenen Namen zurück.
| DisplayObjectContainer | |
![]() |
Gibt die Indexposition einer untergeordneten DisplayObject-Instanz zurück.
| DisplayObjectContainer | |
![]() |
Gibt ein Array an Objekten zurück, die unter dem angegebenen Punkt liegen und dieser DisplayObjectContainer-Instanz untergeordnet sind (auch über mehrere Unterordnungsstufen hinweg).
| DisplayObjectContainer | |
![]() |
Gibt ein Rechteck zurück, das die Begrenzung des Anzeigeobjekts (ohne etwaige Striche oder Formen) definiert, und zwar aufgrund des vom Parameter "targetCoordinateSpace" definierten Koordinatensystems.
| DisplayObject | |
![]() |
Konvertiert das point-Objekt von den (globalen) Bühnenkoordinaten in die (lokalen) Koordinaten des Anzeigeobjekts.
| DisplayObject | |
![]() |
Überprüft, ob das EventDispatcher-Objekt Listener für einen bestimmten Ereignistyp registriert hat.
| EventDispatcher | |
![]() |
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
| Object | |
![]() |
Wertet das Anzeigeobjekt aus, um festzustellen, ob es das Anzeigeobjekt "obj" überdeckt oder schneidet.
| DisplayObject | |
![]() |
Wertet das Anzeigeobjekt aus, um festzustellen, ob es den durch die Parameter "x" und "y" festgelegten Punkt überdeckt oder schneidet.
| DisplayObject | |
![]() |
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
| Object | |
![]() |
Konvertiert das point-Objekt von den (lokalen) Koordinaten des Anzeigeobjekts in die (globalen) Bühnenkoordinaten.
| DisplayObject | |
![]() |
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
| Object | |
![]() |
Entfernt die angegebene untergeordnete DisplayObject-Instanz aus der Child-Liste der DisplayObjectContainer-Instanz.
| DisplayObjectContainer | |
![]() |
Entfernt ein untergeordnetes Anzeigeobjekt aus der angegebenen Indexposition in der Child-Liste des Anzeigeobjekt-Containers.
| DisplayObjectContainer | |
![]() |
Entfernt einen Listener aus dem EventDispatcher-Objekt.
| EventDispatcher | |
![]() |
Ändert die Position eines vorhandenen untergeordneten Objekts im Anzeigeobjekt-Container.
| DisplayObjectContainer | |
![]() |
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
| Object | |
|
Ermöglicht es Benutzern, das angegebene Sprite mit einer Ziehoperation zu verschieben.
| Sprite | ||
|
Beendet die startDrag()-Methode.
| Sprite | ||
![]() |
Kehrt die z-Reihenfolge (von vorne nach hinten) der beiden angegebenen untergeordneten Objekte um.
| DisplayObjectContainer | |
![]() |
Kehrt die z-Reihenfolge (von vorne nach hinten) der untergeordneten Objekte an den beiden angegebenen Indexpositionen in der Child-Liste um.
| DisplayObjectContainer | |
![]() |
Gibt das angegebene Objekt als String zurück.
| Object | |
![]() |
Gibt den Grundwert des angegebenen Objekts zurück.
| Object | |
![]() |
Überprüft, ob bei diesem EventDispatcher-Objekt oder bei einem seiner vorangegangenen Elementen ein Ereignis-Listener für einen bestimmten Ereignistyp registriert ist.
| EventDispatcher | |
| buttonMode | Eigenschaft |
buttonMode:Boolean [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Legt den Schaltflächenmodus für dieses Sprite fest. Wenn true eingestellt ist, verhält sich dieses Sprite wie eine Schaltfläche. Dies bedeutet, dass die Anzeige des Handcursors ausgelöst wird, wenn die Maus über das Sprite bewegt wird, und ein click-Ereignis empfangen werden kann, wenn die Eingabe- oder Leertaste gedrückt wird, während das Sprite den Fokus besitzt. Sie können die Anzeige des Handcursors unterdrücken, indem Sie die useHandCursor-Eigenschaft auf false setzen. In diesem Fall wird der Pfeilcursor angezeigt.
Obwohl es besser ist, für die Erstellung von Schaltflächen die SimpleButton-Klasse zu verwenden, können Sie die buttonMode-Eigenschaft nutzen, um einem Sprite eine schaltflächenähnliche Funktionalität zu verleihen. Um ein Sprite in die Tabulatorreihenfolge einzubinden, setzen Sie die tabEnabled-Eigenschaft (wurde von der InteractiveObject-Klasse geerbt und ist standardmäßig auf false gesetzt) auf true. Zudem sollten Sie sich überlegen, ob die dem Sprite untergeordneten Objekte per Maus aktivierbar sein sollen. Bei den meisten Schaltflächen ist für die untergeordneten Objekte keine Mausinteraktivität aktiviert, da dies beim Ereignisablauf zu Verwirrung führen kann. Um die Mausinteraktivität für alle untergeordneten Objekte zu aktivieren, müssen Sie die mouseChildren-Eigenschaft auf false setzen (wird von der DisplayObjectContainer-Klasse übernommen).
Wenn Sie die buttonMode-Eigenschaft mit der MovieClip-Klasse verwenden (die eine Unterklasse der Sprite-Klasse ist), kann es sein, dass Ihre Schaltfläche zusätzliche Funktionen besitzt. Wenn Sie die Bilder mit den Bezeichnungen "_up" (auf), "_over" (darüber) und "_down" (gedrückt) einschließen, bietet Flash Player automatische Zustandsänderungen (eine Funktionalität, die in früheren ActionScript-Versionen für Movieclips bereitgestellt wurde, die als Schaltflächen verwendet werden). Diese automatischen Zustandsänderungen sind für Sprites nicht verfügbar, da diese keine Zeitleiste und somit auch keine Bildbezeichnungen besitzen.
public function get buttonMode():Boolean public function set buttonMode(value:Boolean):void Siehe auch
buttonMode-Eigenschaft wird einmal auf true und einmal auf false gesetzt. Wenn Sie die Anwendung kompilieren und ausführen, reagieren beide Sprites auf Mausereignisse, aber nur das Sprite, für das buttonMode auf true gesetzt ist, verwendet den Handcursor und ist in der Tabulatorreihenfolge enthalten:
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);| dropTarget | Eigenschaft |
dropTarget:DisplayObject [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt das Anzeigeobjekt an, über das der Sprite gezogen wird oder auf dem der Sprite abgelegt wurde.
public function get dropTarget():DisplayObject Siehe auch
circle-Sprite und zwei target-Sprites erstellt. Die startDrag()-Methode wird für das circle-Sprite aufgerufen, wenn Benutzer den Cursor auf das Sprite bewegen und die Maustaste drücken, und die stopDrag()-Methode wird aufgerufen, wenn Benutzer die Maustaste loslassen. Ermöglicht es Benutzern, das Sprite mit einer Ziehoperation zu verschieben. Wenn Benutzer die Maustaste loslassen, wird die mouseRelease()-Methode aufgerufen, die wiederum den name-Wert des dropTarget-Objekts ausgibt (das Objekt, auf das Benutzer das circle-Sprite gezogen haben):
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);
}| graphics | Eigenschaft |
graphics:Graphics [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Legt das Graphics-Objekt fest, das zu diesem Sprite gehört und für das Vektorzeichnungsbefehle zulässig sind.
public function get graphics():Graphics circle-Sprite erstellt und seine graphics-Eigenschaft verwendet, um einen Kreis mit einer gelben Füllung (0xFFCC00) zu zeichnen:
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
| hitArea | Eigenschaft |
hitArea:Sprite [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt als Kollisionsbereich für ein Sprite ein anderes Sprite an. Wenn die hitArea-Eigenschaft nicht vorhanden ist oder den Wert null oder undefined aufweist, wird das Sprite selbst als Kollisionsbereich verwendet. Der Wert der hitArea-Eigenschaft kann ein Verweis auf ein Sprite-Objekt sein.
Die hitArea-Eigenschaft kann jederzeit geändert werden. Das geänderte Sprite übernimmt sofort das neue Verhalten des Kollisionsbereichs. Das als Kollisionsbereich bestimmte Sprite braucht nicht sichtbar zu sein. Auch wenn es unsichtbar ist, wird seine grafische Form dennoch als Kollisionsbereich erkannt.
Hinweis: Sie müssen die mouseEnabled-Eigenschaft des als Kollisionsbereich vorgesehenen Sprites auf false setzen. Sonst kann es vorkommen, dass Ihre Sprite-Schaltfläche nicht funktioniert, da nicht Ihre Sprite-Schaltfläche, sondern das als Kollisionsbereich bestimmte Sprite die Mausereignisse empfängt.
public function get hitArea():Sprite public function set hitArea(value:Sprite):void circle-Sprite und ein square-Sprite erstellt. Das square-Sprite dient als hitArea für das circle-Sprite. Wenn Benutzer auf das square-Sprite klicken, löst das circle-Sprite ein click-Ereignis aus:
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);| soundTransform | Eigenschaft |
soundTransform:SoundTransform [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Steuert den Sound innerhalb dieses Sprites.
public function get soundTransform():SoundTransform public function set soundTransform(value:SoundTransform):void Siehe auch
container erstellt und seiner Liste der untergeordneten Objekte ein Loader-Objekt hinzugefügt. Das Loader-Objekt lädt eine SWF-Datei. Wenn Benutzer im Textfeld tf durch Klicken auf den Link true auswählen, legt die mute()-Methode die volume-Eigenschaft der soundTransform-Eigenschaft des container-Sprites fest:
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.");
}| useHandCursor | Eigenschaft |
useHandCursor:Boolean [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ein boolescher Wert, der angibt, ob der Handcursor angezeigt werden soll, wenn die Maus über ein Sprite geführt wird, in dem die buttonMode-Eigenschaft auf true gesetzt ist. Der Standardwert für die useHandCursor-Eigenschaft lautet true. Wenn useHandCursor auf true gesetzt ist, erscheint der für Schaltflächen verwendete Handcursor, wenn Benutzer die Maus auf ein Schaltflächen-Sprite bewegen. Wenn useHandCursor auf false gesetzt ist, wird stattdessen der Pfeilcursor verwendet.
Die useHandCursor-Eigenschaft kann jederzeit geändert werden. Das geändert Sprite übernimmt sofort das neue Cursorverhalten.
public function get useHandCursor():Boolean public function set useHandCursor(value:Boolean):void Siehe auch
buttonMode-Eigenschaft jeweils auf true gesetzt wird. Die useHandCursor-Eigenschaft wird jedoch einmal auf true und einmal auf false gesetzt. Wenn Sie die Anwendung kompilieren und ausführen, reagieren beide Sprites als Schaltflächen (und sind in der Tabulatorreihenfolge enthalten), aber nur das Sprite, für das useHandCursor auf true gesetzt ist, verwendet den Handcursor:
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);| Sprite | () | Konstruktor |
public function Sprite()
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Erstellt eine neue Sprite-Instanz. Nachdem Sie die Sprite-Instanz erstellt haben, rufen Sie die Methode DisplayObjectContainer.addChild() oder DisplayObjectContainer.addChildAt() auf, um die Sprite-Instanz einem übergeordneten "DisplayObjectContainer" hinzuzufügen.
| startDrag | () | Methode |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ermöglicht es Benutzern, das angegebene Sprite mit einer Ziehoperation zu verschieben. Das Sprite bleibt so lange ziehbar, bis die Freigabe durch einen Aufruf der Sprite.stopDrag()-Methode aufgehoben wird oder bis ein anderes Sprite als ziehbares Objekt definiert wird. Es kann jeweils nur ein Sprite ziehbar sein.
Parameter
lockCenter:Boolean (default = false) — Legt fest, ob das ziehbare Sprite am Mittelpunkt der Mausposition (true) oder an der Stelle einrastet, an der der Benutzer zum ersten Mal auf das Sprite geklickt hat (false).
|
|
bounds:Rectangle (default = null) — Wert, der zu den Koordinaten des dem Sprite übergeordneten Objekts relativ ist und ein begrenzendes Rechteck für das Sprite angibt.
|
Siehe auch
circle-Sprite und zwei target-Sprites erstellt. Die startDrag()-Methode wird für das circle-Sprite aufgerufen, wenn Benutzer den Cursor auf das Sprite bewegen und die Maustaste drücken, und die stopDrag()-Methode wird aufgerufen, wenn Benutzer die Maustaste loslassen. Ermöglicht es Benutzern, das Sprite mit einer Ziehoperation zu verschieben. Wenn Benutzer die Maustaste loslassen, wird die mouseRelease()-Methode aufgerufen, die wiederum den name-Wert des dropTarget-Objekts ausgibt (das Objekt, auf das Benutzer das circle-Sprite gezogen haben):
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 | () | Methode |
public function stopDrag():void
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Beendet die startDrag()-Methode. Ein Sprite, das mit der startDrag()-Methode ziehbar gemacht wurde, bleibt so lange ziehbar, bis die stopDrag()-Methode hinzugefügt oder ein anderes Sprite ziehbar gemacht wird. Es kann jeweils nur ein Sprite ziehbar sein.
Siehe auch
circle-Sprite und zwei target-Sprites erstellt. Die startDrag()-Methode wird für das circle-Sprite aufgerufen, wenn Benutzer den Cursor auf das Sprite bewegen und die Maustaste drücken, und die stopDrag()-Methode wird aufgerufen, wenn Benutzer die Maustaste loslassen. Ermöglicht es Benutzern, das Sprite mit einer Ziehoperation zu verschieben. Wenn Benutzer die Maustaste loslassen, wird die mouseRelease()-Methode aufgerufen, die wiederum den name-Wert des dropTarget-Objekts ausgibt (das Objekt, auf das Benutzer das circle-Sprite gezogen haben):
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);
}size-Eigenschaft (100 x 100 Pixel) und die Hintergrundfarbe (Orange) zur späteren Verwendung beim Zeichnen des Quadrats deklariert.child-Sprite-Objekt und verwendet es, um zwei Ereignis-Listener und die dazugehörigen Methoden hinzuzufügen: mouseDownHandler() und mouseUpHandler().child-Sprite-Objekt wird dann an die draw()-Methode übergeben, die das orangefarbene Quadrat zeichnet.addChild()-Methode aufgerufen wird. mouseDownHandler(): Wenn Benutzer auf das Sprite-Objekt klicken, fügt diese Methode einen mouseMove-Ereignis-Listener hinzu (die mouseMoveHandler()-Methode), der die Mausbewegungen verarbeitet. Als Nächstes wird die startDrag()-Methode aufgerufen, die das Ziehen des Sprite-Objekts ermöglicht.mouseUpHandler(): Wenn die Maustaste losgelassen wird, wird der mouseMove-Ereignis-Listener entfernt, und die stopDrag()-Methode wird aufgerufen, die das orangefarbene Quadrat an seiner Position fixiert.mouseMoveHandler: Solange die linke Maustaste gedrückt gehalten wird, weist diese Methode den Player an, das orangefarbene Quadrat neu zu zeichnen.Hinweis: Jede Ereignis-Listener-Methode deklariert eine lokale sprite-Variable, der die target-Eigenschaft des Ereignisses zugewiesen wird.
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();
}
}
}
Eine E-Mail an mich senden, wenn dieser Seite Kommentare hinzugefügt werden | Kommentarbericht
Aktuelle Seite: http://livedocs.adobe.com/flash/9.0_de/ActionScriptLangRefV3/flash/display/Sprite.html