| Paket | flash.display |
| Klasse | public class DisplayObject |
| Vererbung | DisplayObject EventDispatcher Object |
| Implementiert | IBitmapDrawable |
| Unterklassen | AVM1Movie, Bitmap, InteractiveObject, MorphShape, Shape, StaticText, Video |
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Die DisplayObject-Klasse unterstützt grundlegende Funktionalitäten wie die x- und y-Position eines Objekts sowie Objekteigenschaften für fortgeschrittene Anwender, z. B. die Transformationsmatrix.
DisplayObject ist eine abstrakte Basisklasse. Daher können Sie DisplayObject nicht direkt aufrufen. Durch das Aufrufen von new DisplayObject() wird eine ArgumentError-Ausnahme ausgelöst.
Alle Anzeigeobjekte erben die Eigenschaften und Methoden der DisplayObject-Klasse.
Die DisplayObject-Klasse selbst enthält keine APIs zum Rendern von Inhalten auf dem Bildschirm. Wenn Sie eine benutzerdefinierte Unterklasse der DisplayObject-Klasse erstellen möchten, sollten Sie daher eine ihrer Unterklassen erweitern, die über APIs zum Rendern von Inhalt auf dem Bildschirm verfügt (wie die Klassen Shape, Sprite, Bitmap, SimpleButton, TextField oder MovieClip).
Einige der in den ActionScript 1.0- und 2.0-Klassen MovieClip, TextField und Button verwendeten Eigenschaften (wie _alpha, _height, _name, _width, _x, _y und andere) verfügen über Entsprechungen in der ActionScript 3.0-Klasse DisplayObject, wurden aber so umbenannt, dass der neue Name nicht mehr mit einem Unterstrich (_) beginnt.
Weitere Informationen finden Sie im Kapitel "Programmierung von Anzeigeobjekten" des Handbuchs Programmieren mit ActionScript 3.0.
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 | ||
| 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 | |
| filters : Array
Ein indiziertes Array, das alle dem Anzeigeobjekt derzeit zugeordneten filter-Objekte enthält.
| DisplayObject | ||
| height : Number
Gibt die Höhe des Anzeigeobjekts in Pixel an.
| DisplayObject | ||
| 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 | ||
| 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 | ||
| 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 | ||
| stage : Stage
[read-only] Die Bühne des Anzeigeobjekts.
| DisplayObject | ||
| transform : Transform
Ein Objekt mit Eigenschaften, die zur Matrix, Farbtransformation und Pixelbegrenzung eines Anzeigeobjekts gehören.
| DisplayObject | ||
| 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 | ||
|---|---|---|---|
![]() |
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 | |
![]() |
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 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 einen Listener aus dem EventDispatcher-Objekt.
| EventDispatcher | |
![]() |
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
| 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 vorangegangenen Elementen ein Ereignis-Listener für einen bestimmten Ereignistyp registriert ist.
| EventDispatcher | |
| Ereignis | Übersicht | Definiert von | ||
|---|---|---|---|---|
![]() | Wird ausgelöst, wenn Flash Player den Betriebssystemfokus erhält und aktiv wird. | EventDispatcher | ||
| Wird ausgelöst, wenn ein Objekt der Anzeigeliste hinzugefügt wird. | DisplayObject | |||
| Wird ausgelöst, wenn ein Anzeigeobjekt der Anzeigeliste für die Bühne hinzugefügt wird. Dies erfolgt entweder direkt oder über das Hinzufügen einer Unterstruktur, die das Anzeigeobjekt enthält. | DisplayObject | |||
![]() | Wird ausgelöst, wenn Flash Player den Betriebssystemfokus verliert und inaktiv wird. | EventDispatcher | ||
| Wird ausgelöst, wenn der Abspielkopf ein neues Bild erreicht. | DisplayObject | |||
| Wird ausgelöst, wenn ein Objekt aus der Anzeigeliste entfernt werden soll. | DisplayObject | |||
| Wird ausgelöst, wenn ein Anzeigeobjekt aus der Anzeigeliste entfernt werden soll. Dies erfolgt entweder direkt oder über das Entfernen einer Unterstruktur, die das Anzeigeobjekt enthält. | DisplayObject | |||
| Wird ausgelöst, wenn die Anzeigeliste aktualisiert und neu gezeichnet werden soll. | DisplayObject | |||
| accessibilityProperties | Eigenschaft |
accessibilityProperties:AccessibilityProperties [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Die aktuellen Eingabehilfenoptionen für dieses Anzeigeobjekt. Wenn Sie die accessibilityProperties-Eigenschaft oder eines der Felder innerhalb von accessibilityProperties ändern, müssen Sie die Accessibility.updateProperties()-Methode aufrufen, damit diese Änderungen angewendet werden.
Hinweis: Bei einem in der Flash-Authoring-Umgebung erstellten Objekt wird für accessibilityProperties ein etwaiger Wert aus dem Bedienfeld "Eigenschaften" für dieses Objekt übernommen.
public function get accessibilityProperties():AccessibilityProperties public function set accessibilityProperties(value:AccessibilityProperties):void Siehe auch
import flash.text.TextField;
import flash.accessibility.AccessibilityProperties;
import flash.accessibility.Accessibility;
import flash.system.Capabilities;
var tf:TextField = new TextField();
tf.text = "hello";
var accessProps:AccessibilityProperties = new AccessibilityProperties();
accessProps.name = "Greeting";
tf.accessibilityProperties = accessProps;
if (Capabilities.hasAccessibility) {
Accessibility.updateProperties();
}
trace(tf.accessibilityProperties.name); // Greeting
| alpha | Eigenschaft |
alpha:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt den Alphatransparenzwert des angegebenen Objekts an. Die zulässigen Werte liegen zwischen 0 (völlig transparent) und 1 (völlig undurchsichtig). Der Standardwert ist 1. Anzeigeobjekte mit einem alpha-Wert von 0 sind aktiv, auch wenn sie nicht sichtbar sind.
public function get alpha():Number
public function set alpha(value:Number):void
alpha-Eigenschaft eines Sprites auf 50 %, wenn die Maus über das Sprite bewegt wird:
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFF0000);
circle.graphics.drawCircle(40, 40, 40);
addChild(circle);
circle.addEventListener(MouseEvent.MOUSE_OVER, dimObject);
circle.addEventListener(MouseEvent.MOUSE_OUT, restoreObject);
function dimObject(event:MouseEvent):void {
event.target.alpha = 0.5;
}
function restoreObject(event:MouseEvent):void {
event.target.alpha = 1.0;
}
| blendMode | Eigenschaft |
blendMode:String [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ein Wert aus der BlendMode-Klasse, mit dem angegeben wird, welcher Mischmodus verwendet werden soll. Eine Bitmap kann intern auf zweierlei Weise gezeichnet werden. Wenn Sie einen Mischmodus oder eine externe Zuschneidemaske aktiviert haben, wird die Bitmap gezeichnet, indem dem Vektorrenderer ein Quadrat hinzugefügt wird. Wenn Sie versuchen, für die Eigenschaft einen unzulässigen Wert einzustellen, setzt der Flash Player den Wert auf BlendMode.NORMAL.
Flash Player weist jedem Pixel des Anzeigeobjekts die blendMode-Eigenschaft zu. Dabei wird jedes Pixel aus den drei Grundfarben (Rot, Grün und Blau) jeweils mit einem Farbwert zwischen 0x00 und 0xFF zusammengestellt. Flash Player vergleicht die Grundfarben eines Pixels im Movieclip mit der entsprechenden Farbe des Hintergrundpixels. Wenn blendMode beispielsweise auf BlendMode.LIGHTEN ("Aufhellen") gesetzt wird, vergleicht Flash Player den Rot-Wert des Anzeigeobjekts mit dem Rot-Wert des Objekts im Hintergrund und verwendet den Wert der helleren Farbe als Wert für die Rot-Komponente der angezeigten Farbe.
In der folgenden Tabelle werden die Einstellungen von blendMode beschrieben. Die BlendMode-Klasse definiert String-Werte, die Sie verwenden können. Die Abbildungen in der Tabelle zeigen blendMode-Werte, die auf ein kreisförmiges Anzeigeobjekt (2) angewendet werden, das ein anderes Anzeigeobjekt (1) überlagert.

| BlendMode-Konstante | Abbildung | Beschreibung |
|---|---|---|
BlendMode.NORMAL | ![]() | Das Anzeigeobjekt wird vor dem Hintergrund angezeigt. Die Pixelwerte des Anzeigeobjekts setzen die Werte des Hintergrunds außer Kraft. An den Stellen, an denen das Anzeigeobjekt transparent ist, wird der Hintergrund sichtbar. |
BlendMode.LAYER | ![]() | Erzwingt die Erstellung einer Transparenzgruppe für das Anzeigeobjekt. Dies bedeutet, dass das Anzeigeobjekt vorher in einem temporären Puffer zusammengesetzt wird, bevor es weiterverarbeitet wird. Dies geschieht automatisch, wenn das Anzeigeobjekt im Voraus mithilfe der Bitmap-Zwischenspeicherung zwischengespeichert wird oder wenn es sich bei dem Anzeigeobjekt um einen Anzeigeobjekt-Container handelt, der mindestens ein untergeordnetes Objekt besitzt, dessen blendMode-Einstellung nicht BlendMode.NORMAL ist.
|
BlendMode.MULTIPLY | ![]() | Multipliziert die Werte der Grundfarben des Anzeigeobjekts mit denen der Hintergrundfarbe und normalisiert das Ergebnis durch Division durch 0xFF. Dies führt zu dunkleren Farben. Diese Einstellung wird im Allgemeinen für Schatten- und Tiefeneffekte verwendet.
Weisen beispielsweise die Grundfarbe (etwa Rot) eines Pixels im Anzeigeobjekt und eines Hintergrund-Pixels den Wert 0x88 auf, lautet das Ergebnis der Multiplikation 0x4840. Die Division durch 0xFF ergibt für diese Grundfarbe 0x48. Dies ist eine dunklere Farbe als die des Anzeigeobjekts bzw. des Hintergrunds. |
BlendMode.SCREEN | ![]() | Multipliziert die Komplementärfarbe des Anzeigeobjekts mit der Komplementärfarbe der Hintergrundfarbe, was zu helleren Farbtönen führt. Diese Einstellung wird in der Regel für Hervorhebungen bzw. zum Entfernen von schwarzen Bereichen aus dem Anzeigeobjekt verwendet. |
BlendMode.LIGHTEN | ![]() | Wählt die hellere Grundfarbe des Anzeigeobjekts und die Farbe des Hintergrunds aus (die Farben mit höheren Werten). Diese Einstellung wird normalerweise für Überlagerungen verwendet.
Weist das Anzeigeobjekt z. B. ein Pixel mit einem RGB-Wert von 0xFFCC33 und das Hintergrund-Pixel einen RGB-Wert von 0xDDF800 auf, lautet der resultierende RGB-Wert für das angezeigte Pixel 0xFFF833 (da 0xFF > 0xDD, 0xCC < 0xF8 und 0x33 > 0x00 = 33). |
BlendMode.DARKEN | ![]() | Wählt die dunklere Grundfarbe des Anzeigeobjekts und des Hintergrunds aus (die niedrigeren Werte). Diese Einstellung wird normalerweise für Überlagerungen verwendet.
Weist das Anzeigeobjekt z. B. ein Pixel mit einem RGB-Wert von 0xFFCC33 und das Hintergrund-Pixel einen RGB-Wert von 0xDDF800 auf, lautet der resultierende RGB-Wert für das angezeigte Pixel 0xDDCC00 (da 0xFF > 0xDD, 0xCC < 0xF8 und 0x33 > 0x00 = 33). |
BlendMode.DIFFERENCE | ![]() | Vergleicht die Grundfarben des Anzeigeobjekts mit den Farben des Hintergrunds und subtrahiert für die beiden Grundfarben den dunkleren Wert von dem helleren Wert. Diese Einstellung wird normalerweise zur Farbverstärkung verwendet.
Wenn das Anzeigeobjekt z. B. ein Pixel mit dem RGB-Farbwert 0xFFCC33 aufweist und das Pixel im Hintergrund den RGB-Wert 0xDDf800 hat, dann erhält das angezeigte Pixel den Wert 0x222C33 (da 0xFF - 0xDD = 0x22, 0xF8 - 0xCC = 0x2C und 0x33 - 0x00 = 0x33 ist). |
BlendMode.ADD | ![]() | Addiert den Wert der Grundfarben des Anzeigeobjekts zu den Farben des Hintergrunds (mit einem oberen Grenzwert von 0xFF). Diese Einstellung wird im Allgemeinen für Animationen von heller werdenden Auflösungen zwischen zwei Objekten verwendet.
Wenn das Anzeigeobjekt z. B. ein Pixel mit dem RGB-Farbwert 0xAAA633 aufweist und das Pixel im Hintergrund den RGB-Wert 0xDD2200 hat, dann erhält das angezeigte Pixel den Wert 0xFFC833 (da 0xAA + 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8 und 0x33 + 0x00 = 0x33 ist). |
BlendMode.SUBTRACT | ![]() | Subtrahiert die Werte der Grundfarben des Anzeigeobjekts von den Werten der Hintergrundfarbe (mit einem unteren Grenzwert von 0). Diese Einstellung wird im Allgemeinen für Animationen von dunkler werdenden Auflösungen zwischen zwei Objekten verwendet.
Weist das Anzeigeobjekt z. B. ein Pixel mit einem RGB-Wert von 0xAA2233 und das Hintergrund-Pixel einen RGB-Wert von 0xDDA600 auf, lautet der resultierende RGB-Wert für das angezeigte Pixel 0x338400 (da 0xDD - 0xAA = 0x33, 0xA6 - 0x22 = 0x84 und 0x00 - 0x33 < 0x00). |
BlendMode.INVERT | ![]() | Kehrt den Hintergrund um. |
BlendMode.ALPHA | ![]() | Wendet den Alphawert jedes Pixels des Anzeigeobjekts auf den Hintergrund an. Dieser Vorgang erfordert, dass die blendMode-Einstellung des übergeordneten Anzeigeobjekts auf BlendMode.LAYER gesetzt wird. In dieser Abbildung gilt beispielsweise für das übergeordnete Anzeigeobjekt, einen weißen Hintergrund, die Einstellung blendMode = BlendMode.LAYER. |
BlendMode.ERASE | ![]() | Löscht den Hintergrund anhand der Alphawerte des Anzeigeobjekts. Dieser Vorgang erfordert, dass die blendMode-Einstellung des übergeordneten Anzeigeobjekts auf BlendMode.LAYER gesetzt wird. In dieser Abbildung gilt beispielsweise für das übergeordnete Anzeigeobjekt, einen weißen Hintergrund, die Einstellung blendMode = BlendMode.LAYER. |
BlendMode.OVERLAY | ![]() | Passt die Farbe jedes Pixels entsprechend der Dunkelheit des Hintergrunds an. Wenn der Hintergrund heller ist als 50 % Grau, werden die Farben des Anzeigeobjekts und des Hintergrunds überlagert, um hellere Farben zu erhalten. Ist der Hintergrund dagegen dunkler als 50 % Grau, werden die Farben multipliziert, was zu dunkleren Farben führt. Diese Einstellung wird normalerweise für Schattierungen verwendet. |
BlendMode.HARDLIGHT | ![]() | Passt die Farbe jedes Pixels entsprechend der Dunkelheit des Anzeigeobjekts an. Ist das Anzeigeobjekt heller als 50 % Grau, werden die Farben von Anzeigeobjekt und Hintergrund überlagert, was zu einer helleren Farbe führt. Ist das Anzeigeobjekt dagegen dunkler als 50 % Grau, werden die Farben multipliziert, was zu dunkleren Farben führt. Diese Einstellung wird normalerweise für Schattierungen verwendet. |
public function get blendMode():String
public function set blendMode(value:String):void
Siehe auch
BlendMode.SUBTRACT, wenn der Mauszeiger auf den Kreis bewegt wird:
import flash.display.Sprite;
import flash.display.BlendMode;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF88CC);
square.graphics.drawRect(0, 0, 80, 80);
addChild(square);
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xAA0022);
circle.graphics.drawCircle(40, 40, 40);
addChild(circle);
circle.addEventListener(MouseEvent.MOUSE_OVER, dimObject);
circle.addEventListener(MouseEvent.MOUSE_OUT, restoreObject);
function dimObject(event:MouseEvent):void {
event.target.blendMode = BlendMode.SUBTRACT;
}
function restoreObject(event:MouseEvent):void {
event.target.blendMode = BlendMode.NORMAL;
}
| cacheAsBitmap | Eigenschaft |
cacheAsBitmap:Boolean [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wird diese Eigenschaft auf true gesetzt, speichert Flash Player eine interne Bitmap-Darstellung des Anzeigeobjekts im Cache. Diese Zwischenspeicherung kann bei Anzeigeobjekten mit komplexen Vektorgrafiken ggf. die Leistung verbessern.
Alle Vektordaten eines Anzeigeobjekts, das eine zwischengespeicherte Bitmap besitzt, werden nicht in die Hauptanzeige, sondern in eine Bitmap gezeichnet. Anschließend wird die Bitmap mit folgenden Eigenschaften in die Hauptanzeige kopiert: nicht gedehnt, nicht gedreht, Pixel rasten an den nächstgelegenen Pixelgrenzen ein. Die Pixel werden dem übergeordneten Objekt 1 zu 1 zugeordnet. Ändern sich die Grenzen der Bitmap, wird diese nicht gedehnt, sondern neu erstellt.
Interne Bitmaps werden nur erstellt, wenn die cacheAsBitmap-Eigenschaft auf true gesetzt ist.
Nachdem Sie die cacheAsBitmap-Eigenschaft auf true gesetzt haben, ändert sich die Wiedergabe nicht. Allerdings führt das Anzeigeobjekt die Ausrichtung an Pixeln automatisch durch. Die Animationsgeschwindigkeit kann je nach Komplexität des Vektorinhalts deutlich schneller bzw. langsamer ablaufen.
Die cacheAsBitmap-Eigenschaft wird jeweils automatisch auf true gesetzt, wenn Sie einen Filter auf ein Anzeigeobjekt anwenden (vorausgesetzt, sein filter-Array ist nicht leer). Und wenn auf ein Anzeigeobjekt ein Filter angewendet worden ist, wird cacheAsBitmap für dieses Anzeigeobjekt als true gemeldet, selbst wenn Sie die Eigenschaft auf false setzen. Wenn Sie sämtliche Filter eines Anzeigeobjekts löschen, werden die cacheAsBitmap-Einstellungen auf ihren vorherigen Stand zurückgesetzt.
In einigen Fällen verwendet ein Anzeigeobjekt keine Bitmap, auch wenn die cacheAsBitmap-Eigenschaft auf true gesetzt wurde. Stattdessen erfolgt die Wiedergabe aufgrund von Vektordaten, und zwar in den folgenden Fällen:
Die cacheAsBitmap-Eigenschaft wird am besten mit Movieclips verwendet, die vorwiegend statischen Inhalt haben und nicht viel skaliert und gedreht werden. Bei solchen Movieclips kann cacheAsBitmap zu einer deutlichen Performance-Steigerung führen, wenn der Movieclip "übersetzt" wird (wenn seine x- und y-Position geändert wird).
public function get cacheAsBitmap():Boolean
public function set cacheAsBitmap(value:Boolean):void
Siehe auch
cacheAsBitmap-Eigenschaft verfolgt, die bei Verwendung eines Filters auf true gesetzt wird:
import flash.display.Sprite; import flash.filters.DropShadowFilter var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xAA0022); circle.graphics.drawCircle(40, 40, 40); addChild(circle); trace(circle.cacheAsBitmap); // false var filter:DropShadowFilter = new DropShadowFilter(); circle.filters = [filter]; trace(circle.cacheAsBitmap); // true
| filters | Eigenschaft |
filters:Array [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ein indiziertes Array, das alle dem Anzeigeobjekt derzeit zugeordneten filter-Objekte enthält. Die Klassen im flash.filters-Paket definieren spezifische Filter, die Sie verwenden können.
Filter können entweder während der Entwurfsphase in der Flash-Authoring-Umgebung oder zur Laufzeit durch Verwendung von ActionScript-Code angewendet werden. Damit Sie einen Filter mithilfe von ActionScript anwenden können, müssen Sie zunächst eine temporäre Kopie des gesamten filters-Arrays erstellen, dann das temporäre Array ändern und schließlich den Wert des temporären Arrays wieder auf das filters-Array zurücksetzen. Es ist nicht möglich, ein neues filter-Objekt direkt dem filters-Array hinzuzufügen.
Um einen Filter mithilfe von ActionScript hinzuzufügen, müssen Sie die folgenden Schritte befolgen (wobei myDisplayObject das Ziel-Anzeigeobjekt ist):
myDisplayObject.filters-Arrays einem temporären Array zu, z. B. einem Array mit dem Namen myFilters.myFilters hinzu.myDisplayObject.filters-Array zu.Wenn das filters-Array nicht definiert ist, müssen Sie kein temporäres Array verwenden. Stattdessen können Sie direkt ein Array-Literal mit einem oder mehreren selbst definierten Filterobjekten zuweisen. Im ersten Beispiel wird im Abschnitt "Beispiele" mithilfe von Code, der sowohl definierte als auch undefinierte filters-Arrays verarbeiten kann, ein Schlagschatten-Filter hinzugefügt.
Um ein vorhandenes filter-Objekt zu ändern, müssen Sie eine Technik anwenden, bei der eine Kopie des filters-Arrays geändert wird:
filters-Arrays einem temporären Array zu, z. B. einem Array mit dem Namen myFilters.myFilters. Um beispielsweise die quality-Eigenschaft des ersten Filters im Array zu ändern, können Sie den folgenden Code anwenden: myFilters[0].quality = 1;filters-Array zu.Wenn ein Anzeigeobjekt während des Ladevorgangs mit einem Filter verknüpft ist, ist dieses so gekennzeichnet, dass es sich selbst als transparente Bitmap zwischenspeichert. Von diesem Punkt an speichert der Player das Anzeigeobjekt als Bitmap zwischen, solange das Anzeigeobjekt eine zulässige Filterliste besitzt. Diese Quell-Bitmap wird als Quellbild für die Filtereffekte verwendet. Jedes Anzeigeobjekt besitzt in der Regel zwei Bitmaps: eine mit dem ursprünglichen Quellanzeigeobjekt, und eine zweite für das nach dem Filtern entstehende Bild. Dieses Ergebnisbild wird für die Wiedergabe verwendet. Solange sich das Anzeigeobjekt nicht ändert, muss das Ergebnisbild nicht aktualisiert werden.
Das flash.filters-Paket umfasst Klassen für Filter. Um beispielsweise einen DropShadow-Filter zu erstellen, würden Sie folgenden Code schreiben:
import flash.filters.DropShadowFilter
var myFilter:DropShadowFilter = new DropShadowFilter (distance, angle, color, alpha, blurX, blurY, quality, inner, knockout)
Mithilfe des Operators is können Sie festlegen, welcher Filtertyp den einzelnen Indexpositionen im filter-Array zugewiesen werden soll. Der folgende Code zeigt z. B., wie Sie die Position des ersten Filters im filters-Array (DropShadowFilter) bestimmen:
import flash.text.TextField;
import flash.filters.*;
var tf:TextField = new TextField();
var filter1:DropShadowFilter = new DropShadowFilter();
var filter2:GradientGlowFilter = new GradientGlowFilter();
tf.filters = [filter1, filter2];
tf.text = "DropShadow index: " + filterPosition(tf, DropShadowFilter).toString(); // 0
addChild(tf)
function filterPosition(displayObject:DisplayObject, filterClass:Class):int {
for (var i:uint = 0; i < displayObject.filters.length; i++) {
if (displayObject.filters[i] is filterClass) {
return i;
}
}
return -1;
}
Hinweis: Da Sie ein neues filter-Objekt dem DisplayObject.filters-Array nicht direkt hinzufügen können, hat der folgende Code keine Auswirkung auf das Ziel-Anzeigeobjekt myDisplayObject:
myDisplayObject.filters.push(myDropShadow);
public function get filters():Array
public function set filters(value:Array):void
Siehe auch
| height | Eigenschaft |
height:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die Höhe des Anzeigeobjekts in Pixel an. Die Höhe wird auf Basis der Begrenzungen des Inhalts des Anzeigeobjekts berechnet. Wenn Sie die Eigenschaft height festsetzen, wird die Eigenschaft scaleY entsprechend angepasst, wie im folgenden Code gezeigt.
var rect:Shape = new Shape(); rect.graphics.beginFill(0xFF0000); rect.graphics.drawRect(0, 0, 100, 100); trace(rect.scaleY) // 1; rect.height = 200; trace(rect.scaleY) // 2;
Abgesehen von TextField- und Video-Objekten, hat ein Anzeigeobjekt ohne Inhalt (z. B. ein leeres Sprite) eine Höhe von 0, selbst wenn Sie versuchen, height auf einen anderen Wert zu setzen.
public function get height():Number
public function set height(value:Number):void
height-Eigenschaft jeweils basierend auf der textHeight-Eigenschaft an. Das zweite Textfeld wird angeordnet, indem seine y-Eigenschaft festgelegt wird:
import flash.text.TextField; var tf1:TextField = new TextField(); tf1.text = "Text Field 1"; tf1.border = true; tf1.wordWrap = true; tf1.width = 40; tf1.height = tf1.textHeight + 5; addChild(tf1); var tf2:TextField = new TextField(); tf2.text = "Text Field 2"; tf2.border = true; tf2.wordWrap = true; tf2.width = 40; tf2.height = tf2.textHeight + 5; tf2.y = tf1.y + tf1.height + 5; addChild(tf2);
| loaderInfo | Eigenschaft |
loaderInfo:LoaderInfo [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt ein LoaderInfo-Objekt mit Informationen zum Laden der Datei zurück, zu der dieses Anzeigeobjekt gehört. Die loaderInfo-Eigenschaft ist nur für das root-Anzeigeobjekt einer SWF-Datei oder für eine geladene Bitmap definiert (nicht jedoch für eine Bitmap, die mit ActionScript gezeichnet wird). Um das loaderInfo-Objekt zu finden, das der SWF-Datei zugeordnet ist, die das Anzeigeobjekt myDisplayObject enthält, verwenden Sie myDisplayObject.root.loaderInfo.
Eine große SWF-Datei kann ihren Download überwachen, indem sie this.root.loaderInfo.addEventListener(Event.COMPLETE, func) aufruft.
public function get loaderInfo():LoaderInfo
Siehe auch
this sich auf ein Anzeigeobjekt bezieht. Der Code gibt die URL der Stamm-SWF-Datei für das Anzeigeobjekt aus:
trace(this.loaderInfo.url);
| mask | Eigenschaft |
mask:DisplayObject [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Das aufrufende Anzeigeobjekt wird durch das angegebene mask-Objekt maskiert. Um sicherzustellen, dass das Maskieren bei skalierter Bühne funktioniert, muss sich das mask-Anzeigeobjekt in einem aktiven Bereich der Anzeigeliste befinden. Das mask-Objekt selbst wird nicht gezeichnet. Setzen Sie mask auf null, um die Maske zu entfernen.
Ein mask-Objekt kann nur skaliert werden, wenn es sich in der Anzeigeliste befindet. Ein mask-Sprite-Objekt kann nur gezogen werden (durch Aufrufen seiner startDrag()-Methode), wenn es sich in der Anzeigeliste befindet. Um die startDrag()-Methode eines mask-Sprite-Objekts basierend auf einem mouseDown-Ereignis aufzurufen, das vom Sprite ausgelöst wurde, setzen Sie die buttonMode-Eigenschaft des Sprites auf true.
public function get mask():DisplayObject
public function set mask(value:DisplayObject):void
drag()-Ereignis-Listener-Funktion die startDrag()-Methode des mask-Sprite-Objekts auf:
import flash.text.TextField;
import flash.display.Sprite;
import flash.events.MouseEvent;
var tf:TextField = new TextField();
tf.text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, "
+ "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
tf.selectable = false;
tf.wordWrap = true;
tf.width = 150;
addChild(tf);
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 40, 40);
addChild(square);
tf.mask = square;
tf.addEventListener(MouseEvent.MOUSE_DOWN, drag);
tf.addEventListener(MouseEvent.MOUSE_UP, noDrag);
function drag(event:MouseEvent):void {
square.startDrag();
}
function noDrag(event:MouseEvent):void {
square.stopDrag();
}
| mouseX | Eigenschaft |
mouseX:Number [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die x-Koordinate der Mausposition in Pixel an.
public function get mouseX():Number
mouseX- und mouseY-Positionen an, wenn Benutzer auf das Sprite klicken:
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 200, 200);
addChild(square);
square.addEventListener(MouseEvent.CLICK, traceCoordinates);
function traceCoordinates(event:MouseEvent):void {
trace(square.mouseX, square.mouseY);
}
| mouseY | Eigenschaft |
mouseY:Number [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die y-Koordinate der Mausposition in Pixel an.
public function get mouseY():Number
mouseX- und mouseY-Positionen an, wenn Benutzer auf das Sprite klicken:
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 200, 200);
addChild(square);
square.addEventListener(MouseEvent.CLICK, traceCoordinates);
function traceCoordinates(event:MouseEvent):void {
trace(square.mouseX, square.mouseY);
}
| name | Eigenschaft |
name:String [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt den Instanznamen des Anzeigeobjekts an. Das Objekt kann in der Child-Liste seines übergeordneten Anzeigeobjekt-Containers identifiziert werden, indem die getChildByName()-Methode des Anzeigeobjekt-Containers aufgerufen wird.
public function get name():String
public function set name(value:String):void
IllegalOperationError — Wenn Sie versuchen, diese Eigenschaft für ein Objekt einzustellen, das in der Zeitleiste der Flash-Authoring-Umgebung platziert wurde.
|
name-Eigenschaft aus, wenn Benutzer auf eines der Objekte klicken:
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFF0000);
circle1.graphics.drawCircle(40, 40, 40);
circle1.name = "circle1";
addChild(circle1);
circle1.addEventListener(MouseEvent.CLICK, traceName);
var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x0000FF);
circle2.graphics.drawCircle(140, 40, 40);
circle2.name = "circle2";
addChild(circle2);
circle2.addEventListener(MouseEvent.CLICK, traceName);
function traceName(event:MouseEvent):void {
trace(event.target.name);
}| opaqueBackground | Eigenschaft |
opaqueBackground:Object [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Legt fest, ob das Anzeigeobjekt bei einer bestimmten Hintergrundfarbe undurchsichtig ist. Eine transparente Bitmap enthält Alphakanaldaten und wird durchsichtig gezeichnet. Eine undurchsichtige Bitmap hat keinen Alphakanal (und wird schneller gerendert als eine transparente Bitmap). Wenn die Bitmap durchsichtig ist, geben Sie an, welche Hintergrundfarbe sie verwenden soll.
Wird ein numerischer Wert angegeben, ist die Oberfläche undurchsichtig (nicht transparent) und besitzt die durch diese Nummer bezeichnete RGB-Hintergrundfarbe. Bei einem Wert von null (dem Standardwert) erhält das Anzeigeobjekt einen transparenten Hintergrund.
Die opaqueBackground-Eigenschaft ist vorwiegend für den Einsatz mit der cacheAsBitmap-Eigenschaft gedacht, um die Wiedergabe zu optimieren. Bei Anzeigeobjekten, in denen die cacheAsBitmap-Eigenschaft auf "true" gesetzt wurde, kann das Setzen von opaqueBackground die Wiedergabe-Performance verbessern.
Beim Aufrufen einer hitTestPoint()-Methode, bei der der Parameter shapeFlag auf true gesetzt wurde, wird der Bereich für den undurchsichtigen Hintergrund nicht angepasst.
Der Bereich für den undurchsichtigen Hintergrund reagiert nicht auf Mausereignisse.
public function get opaqueBackground():Object
public function set opaqueBackground(value:Object):void
Siehe auch
opaqueBackground-Eigenschaft auf Rot (0xFF0000):
import flash.display.Shape; var circle:Shape = new Shape(); circle.graphics.beginFill(0x0000FF); circle.graphics.drawCircle(40, 40, 40); circle.opaqueBackground = 0xFF0000; addChild(circle);
| parent | Eigenschaft |
parent:DisplayObjectContainer [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt das DisplayObjectContainer-Objekt an, das dieses Anzeigeobjekt enthält. Mit der parent-Eigenschaft können Sie einen relativen Pfad zu Anzeigeobjekten angeben, die in der Anzeigelistenhierarchie über dem aktuellen Anzeigeobjekt liegen.
Sie können parent verwenden, um sich wie im folgenden Beispiel in der Anzeigeliste um mehrere Stufen nach oben zu bewegen:
this.parent.parent.alpha = 20;
public function get parent():DisplayObjectContainer
SecurityError — Das übergeordnete Anzeigeobjekt ist Teil einer Sicherheits-Sandbox, auf die Sie keinen Zugriff haben. Sie können diese Situation vermeiden, indem Sie im übergeordneten Film die Security.allowDomain()-Methode aufrufen.
|
parent-Eigenschaft die Hierarchie der Anzeigeliste widerspiegelt:
import flash.display.Sprite; var sprite1:Sprite = new Sprite(); sprite1.name = "sprite1"; var sprite2:Sprite = new Sprite(); sprite2.name = "sprite2"; var sprite3:Sprite = new Sprite(); sprite3.name = "sprite3"; sprite1.addChild(sprite2); sprite2.addChild(sprite3); trace(sprite2.parent.name); // sprite1 trace(sprite3.parent.name); // sprite2 trace(sprite3.parent.parent.name); // sprite1
| root | Eigenschaft |
root:DisplayObject [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Bei einem Anzeigeobjekt in einer geladenen SWF-Datei ist die Eigenschaft root das oberste Anzeigeobjekt in dem Teil der Baumstruktur der Anzeigeliste, der diese SWF-Datei repräsentiert. Bei einem Bitmap-Objekt, das eine geladene Bilddatei repräsentiert, steht die root-Eigenschaft für das Bitmap-Objekt selbst. Bei der Instanz der Hauptklasse der ersten geladenen SWF-Datei steht die root-Eigenschaft für das Anzeigeobjekt selbst. Die root-Eigenschaft des Stage-Objekts steht für das Stage-Objekt selbst. Die root-Eigenschaft ist für jedes Anzeigeobjekt, das nicht in die Anzeigeliste aufgenommen wurde, auf null gesetzt. Eine Ausnahme ist, wenn es in einen Anzeigeobjekt-Container eingefügt wurde, der sich zwar nicht in der Anzeigeliste befindet, aber dem obersten Anzeigeobjekt einer geladenen SWF-Datei untergeordnet ist.
Angenommen, Sie erstellen ein neues Sprite-Objekt, indem Sie die Konstruktormethode Sprite() aufrufen. Seine root-Eigenschaft hat dann den Wert null, bis Sie das Objekt in die Anzeigeliste einfügen (oder in einen Objekt-Container, der sich zwar nicht in der Anzeigeliste befindet, aber dem obersten Anzeigeobjekt einer geladenen SWF-Datei untergeordnet ist).
Bei einer geladenen SWF-Datei ist die root-Eigenschaft des obersten Anzeigeobjekts in der SWF-Datei auf sich selbst gesetzt, auch wenn sich das Loader-Objekt zum Laden der Datei nicht in der Anzeigeliste befindet. Die root-Eigenschaft des Loader-Objekts ist nicht gesetzt, bis es als untergeordnetes Objekt eines Anzeigeobjekts hinzugefügt wird, dessen root-Eigenschaft gesetzt ist.
public function get root():DisplayObject
root-Eigenschaft für das Stage-Objekt, für ein Anzeigeobjekt (Loader-Objekt), das nicht geladen ist (sowohl bevor als auch nachdem es der Anzeigeliste hinzugefügt wurde), und für ein geladenes Objekt (ein geladenes Bitmap-Objekt):
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
trace(stage.root); // [object Stage]
var ldr:Loader = new Loader();
trace(ldr.root); // null
addChild(ldr);
trace(ldr.root); // [object ...]
var urlReq:URLRequest = new URLRequest("example.jpg");
ldr.load(urlReq);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
function loaded(event:Event):void {
trace(ldr.content.root); // [object Bitmap]
}| rotation | Eigenschaft |
rotation:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die Drehung der DisplayObject-Instanz ausgehend von der ursprünglichen Ausrichtung in Grad an. Werte zwischen 0 und 180 geben eine Rechtsdrehung, Werte zwischen 0 und -180 eine Linksdrehung an. Werte außerhalb dieses Bereichs werden zu 360 addiert bzw. von 360 subtrahiert, damit sich ein Wert innerhalb des Bereichs ergibt. Die Anweisung my_video.rotation = 450 ist z. B. mit my_video.rotation = 90 identisch.
public function get rotation():Number
public function set rotation(value:Number):void
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(-50, -50, 100, 100);
square.x = 150;
square.y = 150;
addChild(square);
square.addEventListener(MouseEvent.CLICK, rotate);
function rotate(event:MouseEvent):void {
square.rotation += 15;
}| scale9Grid | Eigenschaft |
scale9Grid:Rectangle [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Das aktuell verwendete Skalierungsraster. Ist diese Eigenschaft auf null gesetzt, wird bei einer Skalierungstransformation das gesamte Anzeigeobjekt normal skaliert.
Wenn Sie dagegen die scale9Grid-Eigenschaft definieren, wird das Anzeigeobjekt basierend auf dem scale9Grid-Rechteck in ein Raster mit 9 Feldern eingeteilt, welches den inneren Bereich des Rasters definiert. Dieses Raster besitzt acht weitere Felder:
Die acht Felder außerhalb des Rechtecks können Sie sich als einen Bilderrahmen denken, auf den beim Skalieren spezielle Regeln angewendet werden.
Wenn die scale9Grid-Eigenschaft gesetzt ist und ein Anzeigeobjekt skaliert wird, werden auch alle Texte und Farbverläufe normal skaliert. Für andere Objekttypen gelten allerdings die folgenden Regeln:
Wird das Anzeigeobjekt gedreht, zeigen alle nachfolgende Skalierungen normales Verhalten (und die scale9Grid-Eigenschaft wird ignoriert).
Betrachten Sie beispielsweise das folgende Anzeigeobjekt und das Rechteck, das als scale9Grid-Eigenschaft des Anzeigeobjekts angewendet wird:
Das Anzeigeobjekt. |
Im roten Rechteck wird das |
Wenn das Anzeigeobjekt skaliert oder gedehnt wird, werden die Objekte innerhalb des Rechtecks normal skaliert, aber die Objekte außerhalb des Rechtecks werden gemäß den Regeln für ein scale9Grid-Raster skaliert:
| Auf 75 % skaliert: | ![]() |
| Auf 50% skaliert: | ![]() |
| Auf 25% skaliert: | ![]() |
| Horizontal auf 150 % gedehnt: | ![]() |
Normalerweise wird die scale9Grid-Eigenschaft angewendet, um ein Anzeigeobjekt als Komponente einzurichten, deren Randbereiche bei einer Skalierung der Komponente weiterhin in gleicher Breite angezeigt werden sollen.
public function get scale9Grid():Rectangle
public function set scale9Grid(value:Rectangle):void
ArgumentError — Wenn Sie an die Methode ein unzulässiges Argument übergeben.
|
Siehe auch
graphics-Eigenschaft ein Rechteck gezeichnet ist. Das Rechteck verfügt über eine Linie mit einer Stärke von 20 Pixel, die als Rahmen dient und mit einem Farbverlauf gefüllt ist. Das timer-Ereignis ruft die scale()-Funktion auf, die das Shape-Objekt skaliert, indem sie die Eigenschaften scaleX und scaleY anpasst. Das scale9Grid-Raster, das auf das Shape-Objekt angewendet wird, verhindert die Skalierung der Rahmenlinie des Rechtecks. Es wird nur die Farbverlaufsfüllung skaliert:
import flash.display.Shape;
import flash.display.GradientType;
import flash.display.SpreadMethod;
import flash.display.InterpolationMethod;
import flash.geom.Matrix;
import flash.geom.Rectangle;
import flash.utils.Timer;
import flash.events.TimerEvent;
var square:Shape = new Shape();
square.graphics.lineStyle(20, 0xFFCC00);
var gradientMatrix:Matrix = new Matrix();
gradientMatrix.createGradientBox(15, 15, Math.PI, 10, 10);
square.graphics.beginGradientFill(GradientType.RADIAL,
[0xffff00, 0x0000ff],
[100, 100],
[0, 0xFF],
gradientMatrix,
SpreadMethod.REFLECT,
InterpolationMethod.RGB,
0.9);
square.graphics.drawRect(0, 0, 100, 100);
var grid:Rectangle = new Rectangle(20, 20, 60, 60);
square.scale9Grid = grid ;
addChild(square);
var tim:Timer = new Timer(100);
tim.start();
tim.addEventListener(TimerEvent.TIMER, scale);
var scaleFactor:Number = 1.01;
function scale(event:TimerEvent):void {
square.scaleX *= scaleFactor;
square.scaleY *= scaleFactor;
if (square.scaleX > 2.0) {
scaleFactor = 0.99;
}
if (square.scaleX < 1.0) {
scaleFactor = 1.01;
}
}| scaleX | Eigenschaft |
scaleX:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die horizontale Skalierung (percentage) des Objekts ausgehend vom Registrierungspunkt an. Der Standardregistrierungspunkt liegt bei (0,0). 1,0 entspricht 100 % Skalierung.
Die Skalierung des lokalen Koordinatensystems wirkt sich auf die Einstellungen der Eigenschaften x und y aus, die in ganzen Pixeln angegeben werden.
public function get scaleX():Number
public function set scaleX(value:Number):void
graphics-Eigenschaft ein Rechteck gezeichnet ist. Wenn Benutzer auf das Sprite klicken, wird es auf 10 % skaliert:
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);
square.addEventListener(MouseEvent.CLICK, scale);
function scale(event:MouseEvent):void {
square.scaleX *= 1.10;
square.scaleY *= 1.10;
}| scaleY | Eigenschaft |
scaleY:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die vertikale Skalierung (percentage) eines Objekts ausgehend vom Registrierungspunkt an. Der Standardregistrierungspunkt liegt bei (0,0). 1,0 entspricht 100 % Skalierung.
Die Skalierung des lokalen Koordinatensystems wirkt sich auf die Einstellungen der Eigenschaften x und y aus, die in ganzen Pixeln angegeben werden.
public function get scaleY():Number
public function set scaleY(value:Number):void
graphics-Eigenschaft ein Rechteck gezeichnet ist. Wenn Benutzer auf das Sprite klicken, wird es auf 10 % skaliert:
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);
square.addEventListener(MouseEvent.CLICK, scale);
function scale(event:MouseEvent):void {
square.scaleX *= 1.10;
square.scaleY *= 1.10;
}| scrollRect | Eigenschaft |
scrollRect:Rectangle [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Die Begrenzungen des Bildlaufrechtecks für das Anzeigeobjekt. Das Anzeigeobjekt wird auf die vom Rechteck definierte Größe zugeschnitten. Innerhalb dieses Rechtecks wird ein Bildlauf durchgeführt, wenn Sie die Eigenschaften x und y des scrollRect-Objekts ändern.
Die Eigenschaften des scrollRect-Rechtecks verwenden den Koordinatenraum des Anzeigeobjekts und werden ebenso wie das Gesamtanzeigeobjekt skaliert. Die Eckbegrenzungen des zugeschnittenen Fensters des Anzeigeobjekts mit Bildlauffunktion liegen auf dem Ursprung des Anzeigeobjekts (0,0) sowie auf dem durch die Rechteckbreite und -höhe definierten Punkt. Diese Punkte sind nicht um den Ursprung zentriert, sondern verwenden den Ursprung, um die linke obere Ecke zu definieren. Ein Anzeigeobjekt mit Bildlauffunktion wird immer pixelweise verschoben.
Sie können den Objektausschnitt nach links und rechts verschieben, indem Sie die x-Eigenschaft des scrollRect-Rechteckobjekts setzen. Sie können den Objektausschnitt nach oben und unten verschieben, indem Sie die y-Eigenschaft des scrollRect-Rechteckobjekts setzen. Wenn das Anzeigeobjekt um 90° gedreht wird und Sie es nach links und rechts verschieben, wird es nach oben und unten verschoben.
public function get scrollRect():Rectangle
public function set scrollRect(value:Rectangle):void
Siehe auch
scrollRect-Eigenschaft den Bildlaufbereich für das Anzeigeobjekt circle definiert. Wenn Sie auf das circle-Objekt klicken, passt die clicked()-Ereignisprozedurmethode die y-Eigenschaft der scrollRect-Eigenschaft des circle-Objekts an und bewirkt, dass für das Objekt ein Bildlauf nach unten ausgeführt wird:
import flash.display.Sprite;
import flash.geom.Rectangle;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(200, 200, 200);
circle.scrollRect = new Rectangle(0, 0, 200, 200);
addChild(circle);
circle.addEventListener(MouseEvent.CLICK, clicked);
function clicked(event:MouseEvent):void {
var rect:Rectangle = event.target.scrollRect;
rect.y -= 5;
event.target.scrollRect = rect;
}
| stage | Eigenschaft |
stage:Stage [read-only]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Die Bühne des Anzeigeobjekts. Eine Flash-Anwendung besitzt nur ein Stage-Objekt. Sie können z. B. mehrere Anzeigeobjekte erstellen und in die Anzeigeliste laden. Die stage-Eigenschaft der verschiedenen Anzeigeobjekte verweist dann auf dasselbe Stage-Objekt (auch wenn das Anzeigeobjekt zu einer geladenen SWF-Datei gehört).
Wird ein Anzeigeobjekt nicht in die Anzeigeliste aufgenommen, ist seine stage-Eigenschaft auf null gesetzt.
public function get stage():Stage
width-Eigenschaft des Stage-Objekts verwendet, um die Textfelder zu positionieren:
import flash.text.TextField; var tf1:TextField = new TextField(); tf1.text = "Text Field 1"; tf1.border = true; tf1.x = 10; addChild(tf1); tf1.width = tf1.stage.stageWidth / 2 - 10; var tf2:TextField = new TextField(); tf2.text = "Text Field 2"; tf2.border = true; tf2.x = tf1.x + tf1.width + 5; addChild(tf2); tf2.width = tf2.stage.stageWidth / 2 - 10; trace(stage.stageWidth);
| transform | Eigenschaft |
transform:Transform [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Ein Objekt mit Eigenschaften, die zur Matrix, Farbtransformation und Pixelbegrenzung eines Anzeigeobjekts gehören. Die spezifischen Eigenschaften – "matrix", "colorTransform" und drei schreibgeschützte Eigenschaften (concatenatedMatrix, concatenatedColorTransform und pixelBounds) – werden im Eintrag für die Transform-Klasse erläutert.
Jede Eigenschaft des transform-Objekts ist selbst wiederum ein Objekt. Dies ist wichtig, da für matrix- und colorTransform-Objekte neue Werte nur gesetzt werden können, indem ein neues Objekt erstellt und in die transform.matrix- oder transform.colorTransform-Eigenschaft kopiert wird.
Um etwa den tx-Wert einer Anzeigeobjekt-Matrix zu erhöhen, müssen Sie eine Kopie des gesamten Matrixobjekts anfertigen und anschließend das neue Objekt in die matrix-Eigenschaft des transform-Objekts kopieren:
var myMatrix:Object = myDisplayObject.transform.matrix; myMatrix.tx += 10; myDisplayObject.transform.matrix = myMatrix;
Sie können die tx-Eigenschaft nicht direkt setzen. Der folgende Code hat keine Auswirkung auf myDisplayObject:
myDisplayObject.transform.matrix.tx += 10;
Eine andere Möglichkeit besteht darin, das gesamte transform-Objekt zu kopieren und es der transform-Eigenschaft eines anderen Anzeigeobjekts zuzuweisen. Der nachfolgende Code kopiert z. B. das gesamte transform-Objekt von myOldDisplayObj nach myNewDisplayObj:
myNewDisplayObj.transform = myOldDisplayObj.transform;
Das resultierende Anzeigeobjekt, myNewDisplayObj, besitzt jetzt für seine Matrix, Farbtransformation und Pixelbegrenzungen dieselben Werte wie das alte Anzeigeobjekt, myOldDisplayObj.
public function get transform():Transform
public function set transform(value:Transform):void
Siehe auch
square-Sprite-Objekt ein. Wenn Benutzer auf das Sprite klicken, passt die transformer()-Methode die Eigenschaften colorTransform and matrix der transform-Eigenschaft des Sprites an:
import flash.display.Sprite;
import flash.geom.ColorTransform;
import flash.geom.Matrix;
import flash.geom.Transform;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.lineStyle(20, 0xFF2200);
square.graphics.beginFill(0x0000DD);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);
var resultColorTransform:ColorTransform = new ColorTransform();
resultColorTransform.alphaMultiplier = 0.5;
resultColorTransform.redOffset = 155;
resultColorTransform.greenMultiplier = 0.5;
var skewMatrix:Matrix = new Matrix(1, 1, 0, 1);
square.addEventListener(MouseEvent.CLICK, transformer);
function transformer(event:MouseEvent):void {
var transformation:Transform = square.transform;
var tempMatrix:Matrix = square.transform.matrix;
tempMatrix.concat(skewMatrix);
square.transform.colorTransform = resultColorTransform;
square.transform.matrix = tempMatrix;
}| visible | Eigenschaft |
visible:Boolean [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt an, ob das Anzeigeobjekt sichtbar ist oder nicht. Nicht sichtbare Anzeigeobjekte sind deaktiviert. Wenn beispielsweise für eine InteractiveObject-Instanz visible=false gesetzt ist, können Benutzer nicht auf diese Instanz klicken.
public function get visible():Boolean
public function set visible(value:Boolean):void
visible-Eigenschaft eines Anzeigeobjekts regelmäßig ändert, was zu einem Blinkeffekt führt:
import flash.text.TextField;
import flash.utils.Timer;
import flash.events.TimerEvent;
var tf:TextField = new TextField();
tf.text = "Hello.";
addChild(tf);
var tim:Timer = new Timer(250);
tim.start();
tim.addEventListener(TimerEvent.TIMER, blinker);
function blinker(event:TimerEvent):void {
tf.visible = !tf.visible;
}| width | Eigenschaft |
width:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die Breite des Anzeigeobjekts in Pixel an. Die Breite wird auf Basis der Begrenzungen des Inhalts des Anzeigeobjekts berechnet. Wenn Sie die Eigenschaft width festsetzen, wird die Eigenschaft scaleX entsprechend angepasst, wie im folgenden Code gezeigt.
var rect:Shape = new Shape(); rect.graphics.beginFill(0xFF0000); rect.graphics.drawRect(0, 0, 100, 100); trace(rect.scaleX) // 1; rect.width = 200; trace(rect.scaleX) // 2;
Abgesehen von TextField- und Video-Objekten, hat ein Anzeigeobjekt ohne Inhalt (z. B. ein leeres Sprite) eine Breite von 0, selbst wenn Sie versuchen, width auf einen anderen Wert zu setzen.
public function get width():Number
public function set width(value:Number):void
square-Sprite-Objekt ein. Wenn Benutzer auf das Sprite klicken, erhöht die widen()-Methode die width-Eigenschaft des Sprites:
import flash.display.Sprite;
import flash.events.MouseEvent;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);
square.addEventListener(MouseEvent.CLICK, widen);
function widen(event:MouseEvent):void {
square.width += 10;
}| x | Eigenschaft |
x:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die x-Koordinate der DisplayObject-Instanz relativ zu den lokalen Koordinaten des übergeordneten DisplayObjectContainer-Objekts an. Befindet sich das Objekt innerhalb eines transformierten DisplayObjectContainer-Objekts, liegt es im lokalen Koordinatensystem des umgebenden DisplayObjectContainer-Objekts. Wenn also ein DisplayObjectContainer-Objekt um 90° nach links gedreht ist, erben die untergeordneten Objekte des DisplayObjectContainer-Objekts ein Koordinatensystem, das um 90° nach links gedreht ist. Die Koordinaten des Objekts beziehen sich auf die Position des Registrierungspunkts.
public function get x():Number
public function set x(value:Number):void
circle-Sprite-Objekt. Ein Timer-Objekt wird verwendet, um die x-Eigenschaft des Sprites alle 50 Millisekunden zu ändern:
import flash.display.Sprite;
import flash.utils.Timer;
import flash.events.TimerEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFF0000);
circle.graphics.drawCircle(100, 100, 100);
addChild(circle);
var tim:Timer = new Timer(50);
tim.start();
tim.addEventListener(TimerEvent.TIMER, bounce);
var xInc:Number = 2;
function bounce(event:TimerEvent):void {
circle.x += xInc;
if (circle.x > circle.width) {
xInc = -2;
}
if (circle.x < 0) {
xInc = 2;
}
}| y | Eigenschaft |
y:Number [read-write]
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt die y-Koordinate der DisplayObject-Instanz relativ zu den lokalen Koordinaten des übergeordneten DisplayObjectContainer-Objekts an. Befindet sich das Objekt innerhalb eines transformierten DisplayObjectContainer-Objekts, liegt es im lokalen Koordinatensystem des umgebenden DisplayObjectContainer-Objekts. Wenn also ein DisplayObjectContainer-Objekt um 90° nach links gedreht ist, erben die untergeordneten Objekte des DisplayObjectContainer-Objekts ein Koordinatensystem, das um 90° nach links gedreht ist. Die Koordinaten des Objekts beziehen sich auf die Position des Registrierungspunkts.
public function get y():Number
public function set y(value:Number):void
height-Eigenschaft jeweils basierend auf der textHeight-Eigenschaft an. Das zweite Textfeld wird angeordnet, indem seine y-Eigenschaft festgelegt wird:
import flash.text.TextField; var tf1:TextField = new TextField(); tf1.text = "Text Field 1"; tf1.border = true; tf1.wordWrap = true; tf1.width = 40; tf1.height = tf1.textHeight + 5; addChild(tf1); var tf2:TextField = new TextField(); tf2.text = "Text Field 2"; tf2.border = true; tf2.wordWrap = true; tf2.width = 40; tf2.height = tf2.textHeight + 5; tf2.y = tf1.y + tf1.height + 5; addChild(tf2);
| getBounds | () | Methode |
public function getBounds(targetCoordinateSpace:DisplayObject):Rectangle
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Gibt ein Rechteck zurück, das den Bereich des Anzeigeobjekts in Bezug auf das Koordinatensystem des targetCoordinateSpace-Objekts definiert. Im folgenden Code wird gezeigt, wie das zurückgegebene Rechteck variieren kann, und zwar abhängig von dem Wert, den Sie im Parameter targetCoordinateSpace an die Methode übergeben:
var container:Sprite = new Sprite();
container.x = 100;
container.y = 100;
this.addChild(container);
var contents:Shape = new Shape();
contents.graphics.drawCircle(0,0,100);
container.addChild(contents);
trace(contents.getBounds(container));
// (x=-100, y=-100, w=200, h=200)
trace(contents.getBounds(this));
// (x=0, y=0, w=200, h=200)
Hinweis: Mit den Methoden localToGlobal() und globalToLocal() können Sie die lokalen Koordinaten des Anzeigeobjekts in Anzeigekoordinaten bzw. Anzeigekoordinaten in lokale Koordinaten umwandeln.
Die getBounds()-Methode ähnelt der getRect()-Methode. Allerdings umfasst das Rechteck, das von der getBounds()-Methode zurückgegeben wird, im Gegensatz zum von der getRect()-Methode zurückgegebenen Rechteck auch Striche auf Formen. Ein Beispiel finden Sie in der Beschreibung der getRect()-Methode.
Parameter
targetCoordinateSpace:DisplayObject — Das Anzeigeobjekt, das das zu verwendende Koordinatensystem definiert.
|
Rectangle — Das Rechteck, das den Bereich des Anzeigeobjekts in Bezug auf das Koordinatensystem des targetCoordinateSpace-Objekts definiert.
|
Siehe auch
| getRect | () | Methode |
public function getRect(targetCoordinateSpace:DisplayObject):Rectangle
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
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. Die von der getRect()-Methode zurückgegebenen Werte sind kleiner oder gleich den von der getBounds()-Methode zurückgegebenen Werten.
Hinweis: Mit den Methoden localToGlobal() und globalToLocal() können Sie die lokalen Koordinaten des Anzeigeobjekts in Bühnenkoordinaten bzw. Bühnenkoordinaten in lokale Koordinaten umwandeln.
Parameter
targetCoordinateSpace:DisplayObject — Das Anzeigeobjekt, das das zu verwendende Koordinatensystem definiert.
|
Rectangle — Das Rechteck, das den Bereich des Anzeigeobjekts in Bezug auf das Koordinatensystem des targetCoordinateSpace-Objekts definiert.
|
Siehe auch
getBounds()-Methode ein größeres Rechteck als die getRect()-Methode zurückgeben kann, da die Striche einen zusätzlichen Bereich einnehmen. In diesem Fall enthält das triangle-Sprite zusätzliche Striche aufgrund der Werte, die als Parameter width und jointStyle der lineStyle()-Methode gelten. Die trace()-Ausgabe (in den letzten beiden Zeilen) zeigt die Unterschiede zwischen den Rechtecken getRect() und getBounds() an:import flash.display.CapsStyle; import flash.display.JointStyle; import flash.display.LineScaleMode; import flash.display.Sprite; import flash.geom.Rectangle; var triangle:Sprite = new Sprite(); var color:uint = 0xFF0044; var lineWidth:Number = 20; var lineAlpha:Number = 1.0; var pixelHinting:Boolean = true; var scaleMode:String = LineScaleMode.NORMAL; var caps:String = CapsStyle.SQUARE; var joints:String = JointStyle.MITER; triangle.graphics.lineStyle(lineWidth, color, lineAlpha, pixelHinting, scaleMode, caps, joints); var triangleSide:Number = 100; triangle.graphics.moveTo(0, 0); triangle.graphics.lineTo(0, triangleSide); triangle.graphics.lineTo(triangleSide, triangleSide); triangle.graphics.lineTo(0, 0); addChild(triangle); trace(triangle.getBounds(this)); // (x=-10, y=-24.1, w=134.1, h=134.1) trace(triangle.getRect(this)); // (x=0, y=0, w=100, h=100)
| globalToLocal | () | Methode |
public function globalToLocal(point:Point):Point
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Konvertiert das point-Objekt von den (globalen) Bühnenkoordinaten in die (lokalen) Koordinaten des Anzeigeobjekts.
Um diese Methode zu verwenden, erstellen Sie zuerst eine Instanz der Point-Klasse. Die x- und y-Werte, die Sie zuweisen, repräsentieren globale Koordinaten, weil sie sich auf den Ursprung (0,0) des Hauptanzeigebereichs beziehen. Dann übergeben Sie die Point-Instanz als Parameter an die globalToLocal()-Methode. Die Methode gibt ein neues point-Objekt mit x- und y-Werten zurück, die sich auf den Ursprung des Anzeigeobjekts beziehen, anstatt auf den Ursprung der Bühne.
Parameter
point:Point — Ein mit der Point-Klasse erstelltes Objekt. Das point-Objekt gibt die x- und y-Koordinaten als Eigenschaften an.
|
Point — Ein point-Objekt, dessen Koordinaten sich auf das Anzeigeobjekt beziehen.
|
Siehe auch
hitTestPoint()-Methode an, indem verschiedene Punkte als Parameter verwendet werden. Die globalToLocal()-Methode konvertiert die Bühnenkoordinaten für den Punkt in den Koordinatenraum der Form:
import flash.display.Shape; import flash.geom.Point; var circle:Shape = new Shape(); circle.graphics.beginFill(0x0000FF); circle.graphics.drawCircle(40, 40, 40); circle.x = 10; addChild(circle); var point1:Point = new Point(0, 0); trace(circle.hitTestPoint(point1.x, point1.y, true)); // false trace(circle.hitTestPoint(point1.x, point1.y, false)); // false trace(circle.globalToLocal(point1)); // [x=-10, y=0] var point2:Point = new Point(10, 1); trace(circle.hitTestPoint(point2.x, point2.y, true)); // false trace(circle.hitTestPoint(point2.x, point2.y, false)); // true trace(circle.globalToLocal(point2)); // [x=0, y=1] var point3:Point = new Point(30, 20); trace(circle.hitTestPoint(point3.x, point3.y, true)); // true trace(circle.hitTestPoint(point3.x, point3.y, false)); // true trace(circle.globalToLocal(point3)); // [x=20, y=20]
| hitTestObject | () | Methode |
public function hitTestObject(obj:DisplayObject):Boolean
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet das Anzeigeobjekt aus, um festzustellen, ob es das Anzeigeobjekt obj überdeckt oder schneidet.
Parameter
obj:DisplayObject — Das zu vergleichende Anzeigeobjekt.
|
Boolean — true bedeutet, dass sich die Anzeigeobjekte überschneiden, und false bedeutet, dass sie sich nicht überschneiden.
|
hitTestObject()-Methode an:
import flash.display.Shape; var circle1:Shape = new Shape(); circle1.graphics.beginFill(0x0000FF); circle1.graphics.drawCircle(40, 40, 40); addChild(circle1); var circle2:Shape = new Shape(); circle2.graphics.beginFill(0x00FF00); circle2.graphics.drawCircle(40, 40, 40); circle2.x = 50; addChild(circle2); var circle3:Shape = new Shape(); circle3.graphics.beginFill(0xFF0000); circle3.graphics.drawCircle(40, 40, 40); circle3.x = 100; circle3.y = 67; addChild(circle3); trace(circle1.hitTestObject(circle2)); // true trace(circle1.hitTestObject(circle3)); // false trace(circle2.hitTestObject(circle3)); // true
| hitTestPoint | () | Methode |
public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wertet das Anzeigeobjekt aus, um festzustellen, ob es den durch die Parameter x und y festgelegten Punkt überdeckt oder schneidet. Die Parameter x und y legen einen Punkt im Koordinatenraum der Bühne fest, nicht den Anzeigeobjekt-Container, der das Anzeigeobjekt enthält (es sei denn, bei dem Anzeigeobjekt-Container handelt es sich um die Bühne).
Parameter
x:Number — Die x-Koordinate, mit der die x-Koordinate dieses Objekts verglichen werden soll.
|
|
y:Number — Die y-Koordinate, mit der die y-Koordinate dieses Objekts verglichen werden soll.
|
|
shapeFlag:Boolean (default = false) — Bestimmt, ob mit den Pixeln des Objekts (true) oder der Begrenzungsbox (false) verglichen werden soll.
|
Boolean — true, wenn das Anzeigeobjekt den angegebenen Punkt überdeckt oder schneidet, andernfalls false.
|
Siehe auch
hitTestPoint()-Methode an, indem verschiedene Punkte als Parameter verwendet werden. Die globalToLocal()-Methode konvertiert die Bühnenkoordinaten für den Punkt in den Koordinatenraum der Form:
import flash.display.Shape; import flash.geom.Point; var circle:Shape = new Shape(); circle.graphics.beginFill(0x0000FF); circle.graphics.drawCircle(40, 40, 40); circle.x = 10; addChild(circle); var point1:Point = new Point(0, 0); trace(circle.hitTestPoint(point1.x, point1.y, true)); // false trace(circle.hitTestPoint(point1.x, point1.y, false)); // false trace(circle.globalToLocal(point1)); // [x=-10, y=0] var point2:Point = new Point(10, 1); trace(circle.hitTestPoint(point2.x, point2.y, true)); // false trace(circle.hitTestPoint(point2.x, point2.y, false)); // true trace(circle.globalToLocal(point2)); // [x=0, y=1] var point3:Point = new Point(30, 20); trace(circle.hitTestPoint(point3.x, point3.y, true)); // true trace(circle.hitTestPoint(point3.x, point3.y, false)); // true trace(circle.globalToLocal(point3)); // [x=20, y=20]
| localToGlobal | () | Methode |
public function localToGlobal(point:Point):Point
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Konvertiert das point-Objekt von den (lokalen) Koordinaten des Anzeigeobjekts in die (globalen) Bühnenkoordinaten.
Mit dieser Methode können Sie beliebige x- und y-Koordinaten von Werten, die sich auf die obere linke Ecke eines bestimmten Anzeigeobjekts beziehen (lokale Koordinaten), in Werte umwandeln, die sich auf die obere linke Ecke der Bühne beziehen (globale Koordinaten).
Um diese Methode zu verwenden, erstellen Sie zuerst eine Instanz der Point-Klasse. Die x- und y-Werte, die Sie zuweisen, repräsentieren lokale Koordinaten, weil sie sich auf den Ursprung (0,0) des Anzeigeobjekts beziehen.
Dann übergeben Sie die Point-Instanz, die Sie erstellt haben, als Parameter an die localToGlobal()-Methode. Die Methode gibt ein neues point-Objekt mit x- und y-Werten zurück, die sich auf den Ursprung der Bühne beziehen, anstatt auf den Ursprung des Anzeigeobjekts.
Parameter
point:Point — Der Name oder Bezeichner eines Punkts, der mit der Point-Klasse erstellt wurde und die x- und y-Koordinaten als Eigenschaften angibt.
|
Point — Ein point-Objekt, dessen Koordinaten sich auf die Bühne beziehen.
|
Siehe auch
mouseX und mouseY des Sprites befinden sich im Koordinatenraum des Anzeigeobjekts. Dieser Code verwendet die localToGlobal()-Methode, um diese Eigenschaften in die globalen Koordinaten (für die Bühne) zu konvertieren:
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.geom.Point;
var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
square.x = 100;
square.y = 200;
addChild(square);
square.addEventListener(MouseEvent.CLICK, traceCoordinates)
function traceCoordinates(event:MouseEvent):void {
var clickPoint:Point = new Point(square.mouseX, square.mouseY);
trace("display object coordinates:", clickPoint);
trace("stage coordinates:", square.localToGlobal(clickPoint));
}| added | Ereignis |
flash.events.Event
flash.events.Event.ADDED
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wird ausgelöst, wenn ein Objekt der Anzeigeliste hinzugefügt wird. Die folgenden Methoden lösen dieses Ereignis aus: DisplayObjectContainer.addChild(), DisplayObjectContainer.addChildAt().
type eines added-Ereignisobjekts.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | true |
cancelable | false. Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Die DisplayObject-Instanz, die in die Anzeigeliste aufgenommen wird. Das unter target angegebene Ziel ist nicht immer das Objekt in der Anzeigeliste, in der der Ereignis-Listener registriert wurde. Mit der Eigenschaft currentTarget können Sie auf das Objekt in der Anzeigeliste zugreifen, das das Ereignis derzeit verarbeitet. |
Siehe auch
| addedToStage | Ereignis |
flash.events.Event
flash.events.Event.ADDED_TO_STAGE
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9.0.28.0 |
Wird ausgelöst, wenn ein Anzeigeobjekt der Anzeigeliste für die Bühne hinzugefügt wird. Dies erfolgt entweder direkt oder über das Hinzufügen einer Unterstruktur, die das Anzeigeobjekt enthält. Die folgenden Methoden lösen dieses Ereignis aus: DisplayObjectContainer.addChild(), DisplayObjectContainer.addChildAt().
type eines addedToStage-Ereignisobjekts.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | false |
cancelable | false. Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Die DisplayObject-Instanz, die der Anzeigeliste für die Bühne hinzugefügt wird. Dies erfolgt entweder direkt oder über das Hinzufügen einer Unterstruktur, die die DisplayObject-Instanz enthält. Wenn die DisplayObject-Instanz direkt hinzugefügt wird, findet das added-Ereignis vor diesem Ereignis statt. |
Siehe auch
| enterFrame | Ereignis |
flash.events.Event
flash.events.Event.ENTER_FRAME
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wird ausgelöst, wenn der Abspielkopf ein neues Bild erreicht. Wenn sich der Abspielkopf gerade nicht bewegt oder wenn es nur ein einziges Bild gibt, wird dieses Ereignis kontinuierlich ausgelöst, und zwar zusammen mit der Bildrate. Das Ereignis wird für alle Anzeigeobjekte, die auf dieses Ereignis warten, gleichzeitig ausgelöst.
Definiert den Wert der Eigenschafttype eines enterFrame-Ereignisobjekts.
Hinweis: Dieses Ereignis durchläuft keine "Aufnahmephase" und wird direkt an das Ziel gesendet – unabhängig davon, ob sich dieses auf der Anzeigeliste befindet.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | false |
cancelable | false. Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Jede DisplayObject-Instanz, die einen Listener besitzt, der für das ENTER_FRAME-Ereignis registriert worden ist. |
| removed | Ereignis |
flash.events.Event
flash.events.Event.REMOVED
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wird ausgelöst, wenn ein Objekt aus der Anzeigeliste entfernt werden soll. Zwei Methoden aus der DisplayObjectContainer-Klasse erzeugen dieses Ereignis: removeChild() und removeChildAt().
Auch die folgenden Methoden eines DisplayObjectContainer-Objekts erzeugen dieses Ereignis, wenn ein Objekt entfernt werden muss, um Platz für das neue Objekt zu schaffen: addChild(), addChildAt() und setChildIndex().
type eines removed-Ereignisobjekts.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | true |
cancelable | false. Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Die DisplayObject-Instanz, die aus der Anzeigeliste entfernt werden soll. Das unter target angegebene Ziel ist nicht immer das Objekt in der Anzeigeliste, in der der Ereignis-Listener registriert wurde. Mit der Eigenschaft currentTarget können Sie auf das Objekt in der Anzeigeliste zugreifen, das das Ereignis derzeit verarbeitet. |
| removedFromStage | Ereignis |
flash.events.Event
flash.events.Event.REMOVED_FROM_STAGE
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9.0.28.0 |
Wird ausgelöst, wenn ein Anzeigeobjekt aus der Anzeigeliste entfernt werden soll. Dies erfolgt entweder direkt oder über das Entfernen einer Unterstruktur, die das Anzeigeobjekt enthält. Zwei Methoden aus der DisplayObjectContainer-Klasse erzeugen dieses Ereignis: removeChild() und removeChildAt().
Auch die folgenden Methoden eines DisplayObjectContainer-Objekts erzeugen dieses Ereignis, wenn ein Objekt entfernt werden muss, um Platz für das neue Objekt zu schaffen: addChild(), addChildAt() und setChildIndex().
type eines removedFromStage-Ereignisobjekts.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | false |
cancelable | false. Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Die DisplayObject-Instanz, die aus der Anzeigeliste für die Bühne entfernt wird. Dies erfolgt entweder direkt oder über das Entfernen einer Unterstruktur, die die DisplayObject-Instanz enthält. Wenn die DisplayObject-Instanz direkt entfernt wird, findet das removed-Ereignis vor diesem Ereignis statt. |
| render | Ereignis |
flash.events.Event
flash.events.Event.RENDER
| Sprachversion : | ActionScript 3.0 |
| Player-Version : | Flash Player 9 |
Wird ausgelöst, wenn die Anzeigeliste aktualisiert und neu gezeichnet werden soll. Dieses Ereignis bietet für Objekte, die auf dieses Ereignis warten, die letzte Möglichkeit zum Vornehmen von Änderungen, bevor die Anzeigeliste neu gezeichnet (gerendert) wird. Für Flash Player ist es das Standardverhalten, die Anzeigeliste zu zeichnen. Sie müssen die invalidate()-Methode des Stage-Objekts immer dann aufrufen, wenn Flash Player ein render-Ereignis senden soll. Render-Ereignisse werden für ein Objekt nur ausgelöst, wenn ein gegenseitiges Vertrauensverhältnis zwischen diesem Objekt und dem Objekt besteht, das Stage.invalidate() aufgerufen hat.
Hinweis: Dieses Ereignis wird nicht ausgelöst, wenn das Flash Player-Fenster keine Neuzeichnung durchführt. Dies ist der Fall, wenn das Flash Player-Fenster minimiert ist oder verdeckt wurde.
Definiert den Wert der Eigenschafttype eines render-Ereignisobjekts.
Hinweis: Dieses Ereignis durchläuft keine "Aufnahmephase" und wird direkt an das Ziel gesendet – unabhängig davon, ob sich dieses auf der Anzeigeliste befindet.
Dieses Ereignis verfügt über die folgenden Eigenschaften:
| Eigenschaft | Wert |
|---|---|
bubbles | false |
cancelable | false. Das Standardverhalten kann nicht abgebrochen werden. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Jede DisplayObject-Instanz, die einen Listener besitzt, der für das RENDER-Ereignis registriert worden ist. |
DisplayObjectExample verwendet, um in einer Ecke der Bühne ein orangefarbenes Quadrat zu zeichnen und dann auf Ereignisse zu reagieren, indem für die einzelnen Ereignisse Textinformationen angezeigt werden. Dies wird in den folgenden Schritten erreicht:
draw()-Methode auf, die auf der Bühne an der Standardposition mit den Koordinaten x = 0, y = 0 ein orangefarbenes Quadrat zeichnet.addedHandler(): Listener für added-Ereignisse, die ausgelöst werden, wenn das Quadrat der Anzeigeliste hinzugefügt wird.enterFrameHandler(): Listener für enterFrame-Ereignisse, die in diesem Beispiel keine besondere Bedeutung haben.removedHandler(): Listener für removed-Ereignisse, die ausgelöst werden, wenn das Quadrat aus der Anzeigeliste entfernt wird. Dies ist der Fall, wenn Benutzer auf das Quadrat klicken.clickHandler(): Listener für click-Ereignisse, die ausgelöst werden, wenn Benutzer auf das orangefarbene Quadrat klicken.renderHandler(): Listener für render-Ereignisse, die ausgelöst werden, nachdem die Anzeigeliste aktualisiert wurde.
package {
import flash.display.Sprite;
public class DisplayObjectExample extends Sprite {
public function DisplayObjectExample() {
var child:CustomDisplayObject = new CustomDisplayObject();
addChild(child);
}
}
}
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.display.Stage;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.*;
class CustomDisplayObject extends Sprite {
private var bgColor:uint = 0xFFCC00;
private var size:uint = 80;
public function CustomDisplayObject() {
draw();
addEventListener(Event.ADDED, addedHandler);
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
addEventListener(Event.REMOVED, removedHandler);
addEventListener(MouseEvent.CLICK, clickHandler);
addEventListener(Event.RENDER, renderHandler);
}
private function draw():void {
graphics.beginFill(bgColor);
graphics.drawRect(0, 0, size, size);
graphics.endFill();
}
private function clickHandler(event:MouseEvent):void {
trace("clickHandler: " + event);
parent.removeChild(this);
}
private function addedHandler(event:Event):void {
trace("addedHandler: " + event);
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.addEventListener("resize", resizeHandler);
}
private function enterFrameHandler(event:Event):void {
trace("enterFrameHandler: " + event);
removeEventListener("enterFrame", enterFrameHandler);
}
private function removedHandler(event:Event):void {
trace("removedHandler: " + event);
stage.removeEventListener("resize", resizeHandler);
}
private function renderHandler(event:Event):void {
trace("renderHandler: " + event);
}
private function resizeHandler(event:Event):void {
trace("resizeHandler: " + event);
}
}
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/DisplayObject.html