Paket | flash.display |
Klasse | public class Sprite |
Vererbung | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Unterklassen | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Eigenschaft | Definiert von | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
Die aktuelle Eingabehilfenimplementierung (AccessibilityImplementation) für diese InteractiveObject-Instanz. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
Die aktuellen Optionen für Eingabehilfen zur Barrierefreiheit dieses Anzeigeobjekts. | 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 | ||
blendShader : Shader [Nur Schreiben]
Legt einen Shader fest, der für das Mischen von Vordergrund und Hintergrund verwendet wird. | DisplayObject | ||
buttonMode : Boolean
Legt den Schaltflächenmodus für dieses Sprite fest. | Sprite | ||
cacheAsBitmap : Boolean
Wird diese Eigenschaft auf „true“ gesetzt, speichern Flash-Laufzeitumgebungen eine interne Bitmap-Darstellung des Anzeigeobjekts im Cache. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Bei einem Nicht-Null-Wert definiert dieses Matrix-Objekt, wie ein Anzeigeobjekt dargestellt wird, wenn cacheAsBitmap auf „true“ gesetzt ist. | DisplayObject | ||
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
contextMenu : NativeMenu
Gibt das diesem Objekt zugeordnete Kontextmenü an. | InteractiveObject | ||
doubleClickEnabled : Boolean
Gibt an, ob das Objekt doubleClick-Ereignisse empfängt. | InteractiveObject | ||
dropTarget : DisplayObject [schreibgeschützt]
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 Fokusrechteck angezeigt wird. | InteractiveObject | ||
graphics : Graphics [schreibgeschützt]
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 Pixeln an. | DisplayObject | ||
hitArea : Sprite
Gibt als Kollisionsbereich für ein Sprite ein anderes Sprite an. | Sprite | ||
loaderInfo : LoaderInfo [schreibgeschützt]
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 | ||
metaData : Object
Bezieht das Metadatenobjekt der DisplayObject-Instanz, wenn Metadaten neben der Instanz dieses DisplayObject in der SWF-Datei durch ein PlaceObject4-Tag gespeichert wurden. | DisplayObject | ||
mouseChildren : Boolean
Bestimmt, ob die untergeordneten Elemente des Objekts maus- oder benutzereingabegerätfähig sind oder nicht. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Gibt an, ob dieses Objekt Meldungen von der Maus oder einem anderen Benutzereingabegerät empfängt. | InteractiveObject | ||
mouseX : Number [schreibgeschützt]
Gibt die x-Koordinate der Position der Maus oder des Benutzereingabegeräts in Pixeln an. | DisplayObject | ||
mouseY : Number [schreibgeschützt]
Gibt die y-Koordinate der Position der Maus oder des Benutzereingabegeräts in Pixeln an. | DisplayObject | ||
name : String
Gibt den Instanznamen des Anzeigeobjekts an. | DisplayObject | ||
needsSoftKeyboard : Boolean
Gibt an, ob eine virtuelle Tastatur (Bildschirmtastatur) angezeigt wird, wenn diese InteractiveObject-Instanz den Fokus erhält. | InteractiveObject | ||
numChildren : int [schreibgeschützt]
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 [schreibgeschützt]
Gibt das DisplayObjectContainer-Objekt an, das dieses Anzeigeobjekt enthält. | DisplayObject | ||
root : DisplayObject [schreibgeschützt]
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 | ||
rotationX : Number
Gibt die x-Achsendrehung der DisplayObject-Instanz in Grad an, und zwar bezogen auf die ursprüngliche Ausrichtung zum übergeordneten 3D-Container. | DisplayObject | ||
rotationY : Number
Gibt die y-Achsendrehung der DisplayObject-Instanz in Grad an, und zwar bezogen auf die ursprüngliche Ausrichtung zum übergeordneten 3D-Container. | DisplayObject | ||
rotationZ : Number
Gibt die Drehung der z-Achse der DisplayObject-Instanz in Grad an, ausgehend von ihrer ursprünglichen Ausrichtung relativ zum übergeordneten 3D-Container. | DisplayObject | ||
scale9Grid : Rectangle
Das aktuell verwendete Skalierungsraster. | DisplayObject | ||
scaleX : Number
Gibt die horizontale Skalierung (Prozentwert) des Objekts ausgehend vom Registrierungspunkt an. | DisplayObject | ||
scaleY : Number
Gibt die vertikale Skalierung (Prozentwert) eines Objekts ausgehend vom Registrierungspunkt an. | DisplayObject | ||
scaleZ : Number
Gibt die Tiefenskalierung (Prozentwert) eines Objekts ausgehend vom Registrierungspunkt an. | DisplayObject | ||
scrollRect : Rectangle
Die Begrenzungen des Bildlaufrechtecks für das Anzeigeobjekt. | DisplayObject | ||
softKeyboard : String
Steuert das Erscheinungsbild der Bildschirmtastatur. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Definiert einen Bereich, der auf dem Bildschirm sichtbar bleiben soll, wenn eine virtuelle Tastatur angezeigt wird (nicht unter iOS verfügbar). | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
Steuert den Sound innerhalb dieses Sprites. | Sprite | ||
stage : Stage [schreibgeschützt]
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 : flash.text:TextSnapshot [schreibgeschützt]
Liefert ein TextSnapshot-Objekt für diese DisplayObjectContainer-Instanz. | DisplayObjectContainer | ||
transform : flash.geom: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 der Zeiger über ein Sprite geführt wird, in dem die 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 Pixeln 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 | ||
z : Number
Gibt die z-Koordinatenposition an der z-Achse der DisplayObject-Instanz relativ zum übergeordneten 3D-Container 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 | ||
Konvertiert einen zweidimensionale Punkt von den (globalen) Bühnenkoordinaten in die dreidimensionalen (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 | ||
Untersucht den Begrenzungsrahmen des Anzeigeobjekts, um festzustellen, ob er sich mit dem Begrenzungsrahmen des obj-Anzeigeobjekts überschneidet. | 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 einen dreidimensionalen Punkt der dreidimensionalen (lokalen) Koordinaten des Anzeigeobjekts in einen zweidimensionalen Punkt der (globalen) Bühnenkoordinaten. | DisplayObject | ||
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 alle untergeordneten DisplayObject-Instanzen aus der Liste der untergeordneten Elemente der DisplayObjectContainer-Instanz. | DisplayObjectContainer | ||
Entfernt einen Listener aus dem EventDispatcher-Objekt. | EventDispatcher | ||
Blendet eine virtuelle Tastatur ein. | InteractiveObject | ||
Ä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 | ||
Ermöglicht dem Benutzer das Ziehen des angegebenen Sprites auf einem berührungsempfindlichen Gerät. | Sprite | ||
Stoppt rekursiv die Ausführung von allen Movieclips, die auf diesem Objekt gerootet sind. | DisplayObjectContainer | ||
Beendet die startDrag()-Methode. | Sprite | ||
Beendet die startTouchDrag()-Methode zur Verwendung mit berührungsempfindlichen Geräten. | 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 die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | ||
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 Vorgänger ein Ereignis-Listener für einen bestimmten Ereignistyp registriert ist. | EventDispatcher |
buttonMode | Eigenschaft |
buttonMode:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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 der Zeiger ü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 Benutzereingabe aktivierbar sein sollen. Bei den meisten Schaltflächen ist für die untergeordneten Objekte keine Benutzereingabeinteraktivität aktiviert, da dies beim Ereignisablauf zu Verwirrung führen kann. Um die Benutzereingabeinteraktivitä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 Stausänderungen (eine Funktionalität, die in früheren ActionScript-Versionen für Movieclips bereitgestellt wurde, die als Schaltflächen verwendet werden). Diese automatischen Statusänderungen sind für Sprites nicht verfügbar, da diese keine Zeitleiste und somit auch keine Bildbezeichnungen besitzen.
Implementierung
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Gibt das Anzeigeobjekt an, über das der Sprite gezogen wird oder auf dem der Sprite abgelegt wurde.
Implementierung
public function get dropTarget():DisplayObject
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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 der Benutzer die Maustaste loslässt, wird die mouseRelease()
-Methode aufgerufen, die wiederum den name
-Wert des dropTarget
-Objekts verfolgt (das Objekt, auf das der Benutzer das circle
-Sprite gezogen hat):
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
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Legt das Graphics-Objekt fest, das zu diesem Sprite gehört und für das Vektorzeichnungsbefehle zulässig sind.
Implementierung
public function get graphics():Graphics
Beispiel ( Verwendung dieses Beispiels )
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
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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 Benutzereingabeereignisse empfängt.
Implementierung
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Beispiel ( Verwendung dieses Beispiels )
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:flash.media:SoundTransform
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Steuert den Sound innerhalb dieses Sprites.
Hinweis: Diese Eigenschaft betrifft nicht HTML-Inhalt in einem HTMLControl-Objekt (in Adobe AIR).
Implementierung
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0 |
Ein boolescher Wert, der angibt, ob der Handcursor angezeigt werden soll, wenn der Zeiger ü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 den Zeiger 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.
Hinweis: Wenn das Sprite in Flex oder Flash Builder untergeordnete Sprites enthält, empfiehlt es sich möglicherweise, die mouseChildren
-Eigenschaft auf false
zu setzen. Wenn beispielsweise ein Handcursor über einer Flex-Steuerung <mx:Label> eingeblendet werden soll, stellen Sie die Eigenschaften useHandCursor
und buttonMode
auf true
und die Eigenschaft mouseChildren
auf false
ein.
Implementierung
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Dreidimensionale Anzeigeobjekte folgen dem Zeiger und Sprite.startDrag()
bewegt das Objekt innerhalb des dreidimensionalen Raums, der durch das Anzeigeobjekt festgelegt ist. Oder, wenn es sich bei dem Anzeigeobjekt um ein zweidimensionales Objekt handelt, das einem dreidimensionalen Objekt untergeordnet ist, bewegt sich das zweidimensionale Objekt innerhalb des dreidimensionalen Raums, der durch das übergeordnete dreidimensionale Objekt festgelegt ist.
Parameter
lockCenter:Boolean (default = false ) — Legt fest, ob das ziehbare Sprite am Mittelpunkt der Zeigerposition (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.
|
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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 der Benutzer die Maustaste loslässt, wird die mouseRelease()
-Methode aufgerufen, die wiederum den name
-Wert des dropTarget
-Objekts verfolgt (das Objekt, auf das der Benutzer das circle
-Sprite gezogen hat):
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); }
startTouchDrag | () | Methode |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Ermöglicht dem Benutzer das Ziehen des angegebenen Sprites auf einem berührungsempfindlichen Gerät. Das Sprite bleibt so lange ziehbar, bis die Freigabe durch einen Aufruf der Sprite.stopTouchDrag()
-Methode aufgehoben wird oder bis ein anderes Sprite als ziehbares Objekt definiert wird. Es kann jeweils nur ein Sprite ziehbar sein.
Dreidimensionale Anzeigeobjekte folgen dem Zeiger und Sprite.startTouchDrag()
bewegt das Objekt innerhalb des dreidimensionalen Raums, der durch das Anzeigeobjekt festgelegt ist. Oder, wenn es sich bei dem Anzeigeobjekt um ein zweidimensionales Objekt handelt, das einem dreidimensionalen Objekt untergeordnet ist, bewegt sich das zweidimensionale Objekt innerhalb des dreidimensionalen Raums, der durch das übergeordnete dreidimensionale Objekt festgelegt ist.
Parameter
touchPointID:int — Eine Ganzzahl, die dem Berührungspunkt zugewiesen wird.
| |
lockCenter:Boolean (default = false ) — Legt fest, ob das ziehbare Sprite am Mittelpunkt der Zeigerposition (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.
|
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
stopDrag | () | Methode |
public function stopDrag():void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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 der Benutzer die Maustaste loslässt, wird die mouseRelease()
-Methode aufgerufen, die wiederum den name
-Wert des dropTarget
-Objekts verfolgt (das Objekt, auf das der Benutzer das circle
-Sprite gezogen hat):
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); }
stopTouchDrag | () | Methode |
public function stopTouchDrag(touchPointID:int):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Beendet die startTouchDrag()
-Methode zur Verwendung mit berührungsempfindlichen Geräten. Ein Sprite, das mit der startTouchDrag()
-Methode ziehbar gemacht wurde, bleibt so lange ziehbar, bis die stopTouchDrag()
-Methode hinzugefügt oder ein anderes Sprite ziehbar gemacht wird. Es kann jeweils nur ein Sprite ziehbar sein.
Parameter
touchPointID:int — Die Ganzzahl, die dem Berührungspunkt in der startTouchDrag -Methode zugewiesen ist.
|
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
- Im Beispiel wird die
size
-Eigenschaft (100 x 100 Pixel) und die Hintergrundfarbe (Orange) zur späteren Verwendung beim Zeichnen des Quadrats deklariert. - Der Konstruktor erstellt anschließend ein neues
child
-Sprite-Objekt und verwendet es, um zwei Ereignis-Listener und die dazugehörigen Methoden hinzuzufügen:mouseDownHandler()
undmouseUpHandler()
. - Das
child
-Sprite-Objekt wird dann an diedraw()
-Methode übergeben, die das orangefarbene Quadrat zeichnet. - Das child-Objekt wird in die Anzeigeliste eingefügt, indem die
addChild()
-Methode aufgerufen wird. - Die Ereignis-Listener funktionieren wie folgt:
mouseDownHandler()
: Wenn Benutzer auf das Sprite-Objekt klicken, fügt diese Methode einen mouseMove-Ereignis-Listener hinzu (diemouseMoveHandler()
-Methode), der die Mausbewegungen verarbeitet. Als Nächstes wird diestartDrag()
-Methode aufgerufen, die das Ziehen des Sprite-Objekts ermöglicht.mouseUpHandler()
: Wenn die Maustaste losgelassen wird, wird der mouseMove-Ereignis-Listener entfernt, und diestopDrag()
-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(); } } }
Tue Jun 12 2018, 10:04 AM Z