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

ContextMenuEvent  - AS3

Paketflash.events
Klassepublic class ContextMenuEvent
VererbungContextMenuEvent Inheritance Event Inheritance Object

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

Ein InteractiveObject löst ein ContextMenuEvent-Objekt aus, wenn der Benutzer das Kontextmenü öffnet oder damit interagiert. Es gibt zwei Arten von ContextMenuEvent-Objekten:
  • ContextMenuEvent.MENU_ITEM_SELECT
  • ContextMenuEvent.MENU_SELECT

Beispiele anzeigen

Verwandte API-Elemente



Öffentliche Eigenschaften
 EigenschaftDefiniert von
 Inheritedbubbles : Boolean
[schreibgeschützt] Gibt an, ob es sich bei dem Ereignis um ein Bubbling-Ereignis handelt.
Event
 Inheritedcancelable : Boolean
[schreibgeschützt] Gibt an, ob das mit dem Ereignis verknüpfte Verhalten verhindert werden kann.
Event
 Inheritedconstructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
Object
  contextMenuOwner : InteractiveObject
Das Anzeigelistenobjekt, dem das Menü zugeordnet ist.
ContextMenuEvent
 InheritedcurrentTarget : Object
[schreibgeschützt] Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet.
Event
 InheritedeventPhase : uint
[schreibgeschützt] Die aktuelle Phase im Ereignisablauf.
Event
  isMouseTargetInaccessible : Boolean
Gibt an, ob die mouseTarget-Eigenschaft aus Sicherheitsgründen auf null gesetzt wurde.
ContextMenuEvent
  mouseTarget : InteractiveObject
Das Anzeigelistenobjekt, auf das der Benutzer mit rechts geklickt hat, um das Kontextmenü anzuzeigen.
ContextMenuEvent
 Inheritedtarget : Object
[schreibgeschützt] Das Ereignis-Ziel.
Event
 Inheritedtype : String
[schreibgeschützt] Der Ereignistyp.
Event
Öffentliche Methoden
 MethodeDefiniert von
  
ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)
Erstellt ein Ereignisobjekt, das bestimmte Informationen über Menüereignisse enthält.
ContextMenuEvent
  
[override] Erstellt eine Kopie des ContextMenuEvent-Objekts und stellt den Wert jeder Eigenschaft so ein, dass er dem Wert des Originals entspricht.
ContextMenuEvent
 Inherited
formatToString(className:String, ... arguments):String
Eine Dienstprogrammfunktion zur Implementierung der toString()-Methode in benutzerdefinierten ActionScript 3.0 Event-Klassen.
Event
 Inherited
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
Object
 Inherited
Überprüft, ob die preventDefault()-Methode bei dem Ereignis aufgerufen wurde.
Event
 Inherited
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
Object
 Inherited
Bricht das Standardverhalten eines Ereignisses ab, wenn dieses Verhalten abgebrochen werden kann.
Event
 Inherited
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
Object
 Inherited
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
Object
 Inherited
Verhindert die Verarbeitung von Ereignis-Listenern im aktuellen Knoten und in Knoten, die dem aktuellen Knoten im Ereignisablauf nachfolgen.
Event
 Inherited
Verhindert die Verarbeitung von Ereignis-Listenern in Knoten, die dem aktuellen Knoten im Ereignisablauf nachfolgen.
Event
 Inherited
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas.
Object
  
[override] Gibt eine Zeichenfolge zurück, die alle Eigenschaften des ContextMenuEvent-Objekts enthält.
ContextMenuEvent
 Inherited
Gibt den Grundwert des angegebenen Objekts zurück.
Object
Öffentliche Konstanten
 KonstanteDefiniert von
  MENU_ITEM_SELECT : String = "menuItemSelect"
[statisch] Definiert den Wert der Eigenschaft "type" eines menuItemSelect-Ereignisobjekts.
ContextMenuEvent
  MENU_SELECT : String = "menuSelect"
[statisch] Definiert den Wert der Eigenschaft "type" eines menuSelect-Ereignisobjekts.
ContextMenuEvent
Eigenschaftendetails

contextMenuOwner

Eigenschaft
contextMenuOwner:InteractiveObject

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

Das Anzeigelistenobjekt, dem das Menü zugeordnet ist. Hierbei kann es sich um ein Mausziel (mouseTarget) oder um einen seiner Vorgänger in der Anzeigeliste handeln.



Implementierung
    public function get contextMenuOwner():InteractiveObject
    public function set contextMenuOwner(value:InteractiveObject):void

isMouseTargetInaccessible

Eigenschaft 
isMouseTargetInaccessible:Boolean

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

Gibt an, ob die mouseTarget-Eigenschaft aus Sicherheitsgründen auf null gesetzt wurde. Ist der Nominalwert von menuTarget ein Verweis auf ein DisplayObject in einer anderen Sicherheitssandbox, wird menuTarget auf null gesetzt, es sei denn, die Berechtigung gilt über die Sandboxgrenzen hinweg für beide Richtungen. Die Berechtigung wird durch das Aufrufen von Security.allowDomain() aus einer SWF-Datei hergestellt, oder indem vom Server der Bilddatei eine Richtliniendatei bereitgestellt und das LoaderContext.checkPolicyFile-Flag beim Laden des Bilds gesetzt wird.



Implementierung
    public function get isMouseTargetInaccessible():Boolean
    public function set isMouseTargetInaccessible(value:Boolean):void

Verwandte API-Elemente

mouseTarget

Eigenschaft 
mouseTarget:InteractiveObject

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

Das Anzeigelistenobjekt, auf das der Benutzer mit rechts geklickt hat, um das Kontextmenü anzuzeigen. Hierbei kann es sich um das Anzeigelistenobjekt handeln, mit dem das Menü verknüpft ist (contextMenuOwner), oder um eines seiner untergeordneten Elemente in der Anzeigeliste.

Der Wert dieser Eigenschaft kann in zwei Fällen null sein: Wenn kein Mausziel vorhanden ist (beispielsweise, wenn Sie die Maus über den Hintergrund bewegen) oder wenn eines vorhanden ist, dieses aber eine Sicherheitssandbox ist, auf die Sie keinen Zugriff haben. Verwenden Sie die isMouseTargetInaccessible()-Eigenschaft, um festzustellen, welcher dieser Gründe zutrifft.



Implementierung
    public function get mouseTarget():InteractiveObject
    public function set mouseTarget(value:InteractiveObject):void

Verwandte API-Elemente

Konstruktordetails

ContextMenuEvent

()Konstruktor
public function ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)

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

Erstellt ein Ereignisobjekt, das bestimmte Informationen über Menüereignisse enthält. Ereignisobjekte werden Ereignis-Listenern als Parameter übergeben.

Parameter
type:String — Der Ereignistyp. Folgende Werte sind möglich:
  • ContextMenuEvent.MENU_ITEM_SELECT
  • ContextMenuEvent.MENU_SELECT
 
bubbles:Boolean (default = false) — Bestimmt, ob das Ereignisobjekt an der Bubbling-Phase des Ereignisablaufs teilnimmt. Ereignis-Listener können über die übernommene Eigenschaft bubbles auf diese Informationen zugreifen.
 
cancelable:Boolean (default = false) — Bestimmt, ob das Ereignisobjekt abgebrochen werden kann. Ereignis-Listener können über die übernommene Eigenschaft cancelable auf diese Informationen zugreifen.
 
mouseTarget:InteractiveObject (default = null) — Das Anzeigelistenobjekt, auf das der Benutzer mit rechts geklickt hat, um das Kontextmenü anzuzeigen. Hierbei kann es sich um contextMenuOwner oder um eines seiner untergeordneten Elemente in der Anzeigeliste handeln.
 
contextMenuOwner:InteractiveObject (default = null) — Das Anzeigelistenobjekt, dem das Menü zugeordnet ist. Hierbei kann es sich um mouseTarget oder um einen seiner Vorgänger in der Anzeigeliste handeln.

Verwandte API-Elemente

Methodendetails

clone

()Methode
override public function clone():Event

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

Erstellt eine Kopie des ContextMenuEvent-Objekts und stellt den Wert jeder Eigenschaft so ein, dass er dem Wert des Originals entspricht.

Rückgabewerte
Event — Ein neues ContextMenuEvent-Objekt mit Eigenschaftswerten, die denen des Originals entsprechen.

toString

()Methode 
override public function toString():String

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

Gibt eine Zeichenfolge zurück, die alle Eigenschaften des ContextMenuEvent-Objekts enthält. Der String liegt im folgenden Format vor:

[ContextMenuEvent type= value bubbles= value cancelable= value ... contextMenuOwner= value ]

Rückgabewerte
String — Eine Zeichenfolge, die alle Eigenschaften des ContextMenuEvent-Objekts enthält.
Konstantendetails

MENU_ITEM_SELECT

Konstante
public static const MENU_ITEM_SELECT:String = "menuItemSelect"

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

Definiert den Wert der Eigenschaft type eines menuItemSelect-Ereignisobjekts.

Dieses Ereignis verfügt über die folgenden Eigenschaften:

EigenschaftWert
bubblesfalse
cancelablefalse. Es gibt kein Standardverhalten, das abgebrochen werden kann.
contextMenuOwnerDas Anzeigelistenobjekt, dem das Menü zugeordnet ist.
currentTargetDas Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet.
mouseTargetDas Anzeigelistenobjekt, auf das der Benutzer mit rechts geklickt hat, um das Kontextmenü anzuzeigen.
targetDas ausgewählte ContextMenuItem-Objekt. Das 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.

Verwandte API-Elemente

MENU_SELECT

Konstante 
public static const MENU_SELECT:String = "menuSelect"

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

Definiert den Wert der Eigenschaft type eines menuSelect-Ereignisobjekts.

Dieses Ereignis verfügt über die folgenden Eigenschaften:

EigenschaftWert
bubblesfalse
cancelablefalse. Es gibt kein Standardverhalten, das abgebrochen werden kann.
contextMenuOwnerDas Anzeigelistenobjekt, dem das Menü zugeordnet ist.
currentTargetDas Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet.
mouseTargetDas Anzeigelistenobjekt, auf das der Benutzer mit rechts geklickt hat, um das Kontextmenü anzuzeigen.
targetDas ContextMenu-Objekt, das angezeigt werden soll. Das 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.

Verwandte API-Elemente

ContextMenuEventExample.as

Im folgenden Beispiel wird die Klasse ContextMenuEventExample zur Entfernung des Standard-Kontextmenüs von der Bühne und zum Hinzufügen eines neuen Menüpunkts, mit dem die Farbe eines Quadrats auf der Bühne geändert wird, verwendet. In diesem Beispiel werden die folgenden Aufgaben ausgeführt:
  1. Die Eigenschaft myContextMenu wird deklariert, und anschließend wird ein neues ContextMenu-Objekt mit der Eigenschaft redRectangle (vom Typ "Sprite") deklariert.
  2. Die Methode removeDefaultItems() wird aufgerufen. Bei dieser Methode werden alle integrierten Kontextmenüelemente mit Ausnahme der Option zum Drucken entfernt.
  3. Die Methode addCustomMenuItems() wird aufgerufen. Bei dieser Methode wird das defaultItems-Array um eine Option ReverseColours zur Farbumkehr erweitert. Hierfür wird die push()-Methode "Array" eingesetzt. Ein menuItemSelect-Ereignis-Listener wird dem ContextMenuItem-Objekt hinzugefügt. Die verknüpfte Methode ist menuItemSelectHandler(). Bei dieser Methode werden einige trace()-Anweisungen gedruckt, wenn der Benutzer die Option zur Farbumkehr im Kontextmenü wählt. Außerdem wird das rote Quadrat schwarz und der schwarze Text rot.
  4. Im Konstruktor wird ein menuSelect-Ereignis-Listener zusammen mit der verknüpften Methode menuSelectHandler() hinzugefügt. Hiermit werden drei trace()-Anweisungen gedruckt, wenn ein Element im Kontextmenü ausgewählt wird.
  5. Der Konstruktor ruft die Methode addChildren() auf, mit der ein rotes Quadrat gezeichnet und der Anzeigeliste hinzugefügt wird. Das Quadrat wird sofort angezeigt.
  6. Zum Schluss wird myContextMenu dem Kontextmenü der Eigenschaft redRectangle zugewiesen, sodass das benutzerdefinierte Kontextmenü nur angezeigt wird, wenn sich der Mauszeiger über dem Quadrat befindet.
package {
    import flash.ui.ContextMenu;
    import flash.ui.ContextMenuItem;
    import flash.ui.ContextMenuBuiltInItems;
    import flash.events.ContextMenuEvent;
    import flash.display.Sprite;
    import flash.display.Shape;
    import flash.text.TextField;

    public class ContextMenuEventExample extends Sprite {
        private var myContextMenu:ContextMenu;
        private var menuLabel:String = "Reverse Colors";
        private var textLabel:String = "Right Click";
        private var redRectangle:Sprite;
        private var label:TextField;
        private var size:uint = 100;
        private var black:uint = 0x000000;
        private var red:uint = 0xFF0000;

        public function ContextMenuEventExample() {
            myContextMenu = new ContextMenu();
            removeDefaultItems();
            addCustomMenuItems();
            myContextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, menuSelectHandler);

            addChildren();
            redRectangle.contextMenu = myContextMenu;
        }

        private function addChildren():void {
            redRectangle = new Sprite();
            redRectangle.graphics.beginFill(red);
            redRectangle.graphics.drawRect(0, 0, size, size);
            addChild(redRectangle);
            redRectangle.x = size;
            redRectangle.y = size;
            label = createLabel();
            redRectangle.addChild(label);
        }

        private function removeDefaultItems():void {
            myContextMenu.hideBuiltInItems();
            var defaultItems:ContextMenuBuiltInItems = myContextMenu.builtInItems;
            defaultItems.print = true;
        }

        private function addCustomMenuItems():void {
            var item:ContextMenuItem = new ContextMenuItem(menuLabel);
            myContextMenu.customItems.push(item);
            item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemSelectHandler);
        }

        private function menuSelectHandler(event:ContextMenuEvent):void {
            trace("menuSelectHandler: " + event);
        }

        private function menuItemSelectHandler(event:ContextMenuEvent):void {
            trace("menuItemSelectHandler: " + event);
            var textColor:uint = (label.textColor == black) ? red : black;
            var bgColor:uint = (label.textColor == black) ? black : red;
            redRectangle.graphics.clear();
            redRectangle.graphics.beginFill(bgColor);
            redRectangle.graphics.drawRect(0, 0, size, size);
            label.textColor = textColor;
        }

        private function createLabel():TextField {
            var txtField:TextField = new TextField();
            txtField.text = textLabel;
            return txtField;
        }
    }
}




[ X ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

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