Pakiet | flash.events |
Klasa | public class ContextMenuEvent |
Dziedziczenie | ContextMenuEvent Event Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
-
ContextMenuEvent.MENU_ITEM_SELECT
-
ContextMenuEvent.MENU_SELECT
Powiązane elementy interfejsu API
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
bubbles : Boolean [tylko do odczytu]
Określa, czy zdarzenie może przechodzić fazę propagacji. | Event | ||
cancelable : Boolean [tylko do odczytu]
Wskazuje, czy można uniemożliwić operacje skojarzone ze zdarzeniem. | Event | ||
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
contextMenuOwner : InteractiveObject
Obiekt listy wyświetlania, z którym jest skojarzone menu. | ContextMenuEvent | ||
currentTarget : Object [tylko do odczytu]
Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. | Event | ||
eventPhase : uint [tylko do odczytu]
Bieżąca faza przepływu zdarzeń. | Event | ||
isMouseTargetInaccessible : Boolean
Określa, czy ze względów bezpieczeństwa właściwość mouseTarget została ustawiona na null. | ContextMenuEvent | ||
mouseTarget : InteractiveObject
Obiekt listy wyświetlania, którego kliknięcie prawym przyciskiem myszy powoduje wyświetlenie menu kontekstowego. | ContextMenuEvent | ||
target : Object [tylko do odczytu]
Miejsce docelowe zdarzenia. | Event | ||
type : String [tylko do odczytu]
Typ zdarzenia. | Event |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)
Tworzy obiekt Event, który zawiera określone informacje o zdarzeniach dotyczących menu. | ContextMenuEvent | ||
[przesłanianie]
Tworzy kopię obiektu ContextMenuEvent i ustawia wartości poszczególnych właściwości zgodnie z właściwościami oryginału. | ContextMenuEvent | ||
Funkcja narzędziowa umożliwiająca implementację metody toString() w niestandardowych klasach Event w języku ActionScript 3.0. | Event | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Sprawdza, czy w odniesieniu do tego zdarzenia wywołano metodę preventDefault(). | Event | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Anuluje domyślne ustawienia zdarzenia, o ile zachowanie to może być anulowane. | Event | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Zapobiega przetwarzaniu wszelkich detektorów zdarzeń w węźle bieżącym i węzłach następujących po nim. | Event | ||
Zapobiega przetwarzaniu wszelkich detektorów zdarzeń w węzłach następujących po węźle bieżącym w przepływie zdarzeń. | Event | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
[przesłanianie]
Zwraca ciąg znaków, który zawiera wszystkie właściwości obiektu ContextMenuEvent. | ContextMenuEvent | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
Stała | Zdefiniowane przez | ||
---|---|---|---|
MENU_ITEM_SELECT : String = "menuItemSelect" [statyczny]
Definiuje wartość właściwości type obiektu zdarzenia menuItemSelect. | ContextMenuEvent | ||
MENU_SELECT : String = "menuSelect" [statyczny]
Definiuje wartość właściwości type obiektu zdarzenia menuSelect. | ContextMenuEvent |
contextMenuOwner | właściwość |
contextMenuOwner:InteractiveObject
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Obiekt listy wyświetlania, z którym jest skojarzone menu. Może to być cel myszy (mouseTarget
) lub jeden z jego przodków na liście wyświetlania.
Implementacja
public function get contextMenuOwner():InteractiveObject
public function set contextMenuOwner(value:InteractiveObject):void
isMouseTargetInaccessible | właściwość |
isMouseTargetInaccessible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 10 |
Określa, czy ze względów bezpieczeństwa właściwość mouseTarget
została ustawiona na null
. Jeśli nominalną wartością właściwości menuTarget
byłoby odwołanie do obiektu DisplayObject
w innym obszarze izolowanym, wówczas właściwości menuTarget
przypisywana jest wartość null
, chyba że ustanowiono uprawnienia w obu kierunkach przez granice obszaru izolowanego. Uprawnienie ustanawiane jest przez wywołanie metody Security.allowDomain()
z pliku SWF lub przez dostarczenie pliku reguł z serwera pliku obrazu i ustawienie flagi LoaderContext.checkPolicyFile
podczas ładowania obrazu.
Implementacja
public function get isMouseTargetInaccessible():Boolean
public function set isMouseTargetInaccessible(value:Boolean):void
Powiązane elementy interfejsu API
mouseTarget | właściwość |
mouseTarget:InteractiveObject
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Obiekt listy wyświetlania, którego kliknięcie prawym przyciskiem myszy powoduje wyświetlenie menu kontekstowego. Może to być obiekt listy wyświetlania, z którym skojarzone jest menu (contextMenuOwner
) lub jeden z jego potomków na liście wyświetlania.
Ta właściwość może mieć wartość null
w dwóch przypadkach: jeśli nie istnieje cel myszy (np. gdy mysz zostanie przesunięta z tła nad inny element) lub jeśli istnieje cel myszy, ale znajduje się on w obszarze izolowanym, do którego program nie ma dostępu. Aby wskazać, który z tych powodów znajduje zastosowanie, należy użyć właściwości isMouseTargetInaccessible()
.
Implementacja
public function get mouseTarget():InteractiveObject
public function set mouseTarget(value:InteractiveObject):void
Powiązane elementy interfejsu API
ContextMenuEvent | () | Konstruktor |
public function ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Tworzy obiekt Event, który zawiera określone informacje o zdarzeniach dotyczących menu. Obiekty Event są przekazywane jako parametry do detektorów zdarzeń.
Parametrytype:String — Typ zdarzenia. Możliwe wartości to:
| |
bubbles:Boolean (default = false ) — Określa, czy obiekt Event uczestniczy w etapie propagacji przepływu zdarzeń. Detektory zdarzeń mogą uzyskiwać dostęp do tej informacji za pośrednictwem dziedziczonej właściwości bubbles .
| |
cancelable:Boolean (default = false ) — Określa, czy obiekt Event może zostać anulowany. Detektory zdarzeń mogą uzyskiwać dostęp do tej informacji za pośrednictwem dziedziczonej właściwości cancelable .
| |
mouseTarget:InteractiveObject (default = null ) — Obiekt listy wyświetlania, którego kliknięcie prawym przyciskiem myszy spowoduje wyświetlenie menu kontekstowego. Może to być obiekt contextMenuOwner lub jeden z jego potomków na liście wyświetlania.
| |
contextMenuOwner:InteractiveObject (default = null ) — Obiekt listy wyświetlania, z którym jest skojarzone menu. Może to być obiekt mouseTarget lub jeden z jego przodków na liście wyświetlania.
|
Powiązane elementy interfejsu API
clone | () | metoda |
override public function clone():Event
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Tworzy kopię obiektu ContextMenuEvent i ustawia wartości poszczególnych właściwości zgodnie z właściwościami oryginału.
ZwracaEvent — Nowy obiekt ContextMenuEvent z wartościami właściwości zgodnymi z oryginałem.
|
toString | () | metoda |
override public function toString():String
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Zwraca ciąg znaków, który zawiera wszystkie właściwości obiektu ContextMenuEvent. Format ciągu znaków jest następujący:
[ContextMenuEvent type=wartość bubbles=wartość cancelable=wartość ... contextMenuOwner=wartość]
String — Ciąg znaków, który zawiera wszystkie właściwości obiektu ContextMenuEvent.
|
MENU_ITEM_SELECT | Stała |
public static const MENU_ITEM_SELECT:String = "menuItemSelect"
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Definiuje wartość właściwości type
obiektu zdarzenia menuItemSelect
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
contextMenuOwner | Obiekt listy wyświetlania, z którym jest skojarzone menu. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
mouseTarget | Obiekt listy wyświetlania, którego kliknięcie prawym przyciskiem myszy spowoduje wyświetlenie menu kontekstowego. |
target | Obiekt ContextMenuItem, który został wybrany. Obiekt target nie zawsze jest obiektem na liście wyświetlania, która zarejestrowała detektor zdarzeń. Właściwość currentTarget umożliwia uzyskanie dostępu do obiektu na liście wyświetlania, który obecnie przetwarza zdarzenie. |
Powiązane elementy interfejsu API
MENU_SELECT | Stała |
public static const MENU_SELECT:String = "menuSelect"
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Definiuje wartość właściwości type
obiektu zdarzenia menuSelect
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
contextMenuOwner | Obiekt listy wyświetlania, z którym jest skojarzone menu. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
mouseTarget | Obiekt listy wyświetlania, którego kliknięcie prawym przyciskiem myszy spowoduje wyświetlenie menu kontekstowego. |
target | Obiekt ContextMenu, który ma zostać wyświetlony. Obiekt target nie zawsze jest obiektem na liście wyświetlania, która zarejestrowała detektor zdarzeń. Właściwość currentTarget umożliwia uzyskanie dostępu do obiektu na liście wyświetlania, który obecnie przetwarza zdarzenie. |
Powiązane elementy interfejsu API
ContextMenuEventExample
do usunięcia domyślnych pozycji menu kontekstowego ze stołu montażowego i dodania nowej pozycji menu, która powoduje zmianę koloru kwadratu na stole montażowym. Przykładowy kod realizuje następujące zadania:
- Deklarowana jest właściwość
myContextMenu
, która następnie jest przypisywana do nowego obiektu ContextMenu. Następnie deklarowana jest właściwośćredRectangle
(typu Sprite). - Wywoływana jest metoda
removeDefaultItems()
. Ta metoda usuwa wszystkie wbudowane pozycje menu kontekstowego, z wyjątkiem polecenia Drukuj. - Wywoływana jest metoda
addCustomMenuItems()
. Ta metoda umieszcza element menuReverse Colors
(Odwróć kolory) w tablicydefaultItems
, korzystając z metodypush()
obiektu Array. Do obiektu ContextMenuItem jest dodawany detektor zdarzeńmenuItemSelect
i wywoływana jest skojarzona metodamenuItemSelectHandler()
. Ta metoda drukuje instrukcjetrace()
za każdym razem, gdy użytkownik wybierze polecenie Reverse Colors z menu kontekstowego Ponadto czerwony kwadrat staje się czarny, a czarny tekst staje się czerwony. - Po powrocie do konstruktora dodawany jest detektor zdarzeń
menuSelect
wraz ze skojarzoną metodąmenuSelectHandler()
, która po prostu drukuje trzy instrukcjetrace()
za każdym razem, gdy wybrany jest jakikolwiek element z menu kontekstowego. - Konstruktor wywołuje metodę
addChildren()
, która rysuje czerwony kwadrat i dodaje go do listy wyświetlania, co powoduje natychmiastowe wyświetlenie kwadratu. - Na koniec właściwość
myContextMenu
jest przypisywana do menu kontekstowego właściwościredRectangle
, przez co niestandardowe menu kontekstowe jest wyświetlane tylko wtedy, gdy wskaźnik myszy znajduje się nad kwadratem.
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; } } }
Tue Jun 12 2018, 12:06 PM Z