| Pacchetto | flash.ui |
| Classe | public final class ContextMenu |
| Ereditarietà | ContextMenu EventDispatcher Object |
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
È possibile associare un oggetto ContextMenu a uno specifico oggetto pulsante, clip filmato o campo di testo, oppure a un intero livello di filmato. A tale scopo, utilizzare la proprietà menu della classe Button, MovieClip o TextField. Per ulteriori informazioni sulla proprietà menu, vedere Button.menu, MovieClip.menu e TextField.menu.
Per aggiungere nuovi elementi a un oggetto ContextMenu, creare un oggetto ContextMenuItem e successivamente aggiungerlo all'array ContextMenu.customItems. Per ulteriori informazioni sulla creazione delle voci dei menu di scelta rapida, consultare la sezione relativa alla classe ContextMenuItem.
Flash è dotato di tre tipi di menu di scelta rapida: il menu standard (visualizzato quando si fa clic con il pulsante destro del mouse in Flash Player), il menu Modifica (visualizzato quando si fa clic con il pulsante destro del mouse su un campo di testo selezionabile o modificabile) e il menu di errore (visualizzato quando il caricamento di un file SWF in Flash Player fallisce). Solo i menu standard e Modifica possono essere modificati mediante la classe ContextMenu.
Le voci di menu personalizzate vengono visualizzate in cima al menu di scelta rapida di Flash Player, separate da tutte le voci di menu incorporate visibili per mezzo di una barra separatrice. È possibile aggiungere un massimo di 15 voci personalizzate a un menu di scelta rapida. Da un menu di scelta rapida non è possibile rimuovere la voce Impostazioni, che in Flash è necessaria per consentire agli utenti di accedere alle impostazioni di riservatezza e di memorizzazione nel computer locale. Inoltre, non è possibile rimuovere la voce Informazioni, che è necessaria per conoscere la versione di Flash Player in uso.
Per creare un oggetto ContextMenu prima di chiamarne i metodi, utilizzare la funzione di costruzione ContextMenu().
Vedere anche
| Proprietà | Definito da | ||
|---|---|---|---|
| builtInItems: ContextMenuBuiltInItems
Un oggetto che ha le seguenti proprietà della classe ContextMenuBuiltInItems: forwardAndBack, loop, play, print, quality, rewind, save e zoom.
| ContextMenu | ||
![]() | constructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
| Object | |
| customItems: Array
Un array di oggetti ContextMenuItem.
| ContextMenu | ||
![]() | prototype: Object
[statico]
Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
| Object | |
| Metodo | Definito da | ||
|---|---|---|---|
|
Crea un oggetto ContextMenu.
| ContextMenu | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
| EventDispatcher | |
|
Crea una copia dell'oggetto ContextMenu specificato.
| ContextMenu | ||
![]() |
Invia un evento nel flusso di eventi.
| EventDispatcher | |
![]() |
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
| EventDispatcher | |
![]() |
Indica se per un oggetto è definita una proprietà specifica.
| Object | |
|
Nasconde tutte le voci di menu incorporate (a eccezione di Settings, o Impostazioni) nell'oggetto ContextMenu.
| ContextMenu | ||
![]() |
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
| Object | |
![]() |
Indica se la proprietà specificata esiste ed è enumerabile.
| Object | |
![]() |
Rimuove un listener dall'oggetto EventDispatcher.
| EventDispatcher | |
![]() |
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
| Object | |
![]() |
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
| Object | |
![]() |
Restituisce il valore di base dell'oggetto specificato.
| Object | |
![]() |
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
| EventDispatcher | |
| Evento | Riepilogo | Definito da | ||
|---|---|---|---|---|
![]() | Inviato quando Flash Player riceve lo stato di attivazione del sistema operativo e diventa attivo. | EventDispatcher | ||
![]() | Inviato quando Flash Player perde lo stato di attivazione del sistema operativo e sta per diventare inattivo. | EventDispatcher | ||
| Inviato quando un utente genera per la prima volta un menu di scelta rapida, ma prima che il contenuto del menu venga visualizzato. | ContextMenu | |||
| builtInItems | proprietà |
builtInItems:ContextMenuBuiltInItems [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Un oggetto che ha le seguenti proprietà della classe ContextMenuBuiltInItems: forwardAndBack, loop, play, print, quality, rewind, save e zoom. Se si impostano queste proprietà su false, vengono rimosse le voci di menu corrispondenti dall'oggetto ContextMenu specificato. Queste proprietà sono enumerabili e sono impostate su true per impostazione predefinita.
public function get builtInItems():ContextMenuBuiltInItems
public function set builtInItems(value:ContextMenuBuiltInItems):void
Vedere anche
| customItems | proprietà |
customItems:Array [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Un array di oggetti ContextMenuItem. Ogni oggetto dell'array rappresenta un menu di scelta rapida che è stato definito. Utilizzare questa proprietà per aggiungere, rimuovere o modificare queste voci di menu personalizzate.
Per aggiungere nuove voci di menu, creare un oggetto ContextMenuItem e successivamente aggiungerlo all'array customItems (ad esempio, mediante Array.push()). Per ulteriori informazioni sulla creazione delle voci di menu, consultare la sezione relativa alla classe ContextMenuItem.
public function get customItems():Array
public function set customItems(value:Array):void
Vedere anche
| ContextMenu | () | Funzione di costruzione |
public function ContextMenu()
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Crea un oggetto ContextMenu.
Vedere anche
| clone | () | metodo |
public function clone():ContextMenu
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Crea una copia dell'oggetto ContextMenu specificato. La copia eredita tutte le proprietà dell'oggetto menu originale.
RestituisceContextMenu — Un oggetto ContextMenu che contiene tutte le proprietà dell'oggetto menu originale.
|
| hideBuiltInItems | () | metodo |
public function hideBuiltInItems():void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Nasconde tutte le voci di menu incorporate (a eccezione di Settings, o Impostazioni) nell'oggetto ContextMenu. Se è in esecuzione la versione di debug di Flash Player, viene visualizzata la voce di menu Debug (per i file SWF per cui non è attivato il debug remoto, la voce di menu è disattivata).
Questo metodo nasconde solo le voci dei menu di scelta rapida standard; non ha alcun effetto sulle voci che fanno parte del menu Modifica o dei menu di errore.
Questo metodo funziona impostando tutti i membri booleani di my_cm.builtInItems su false. È possibile rendere visibile una voce di menu incorporata in modo selettivo impostandone il membro corrispondente in my_cm.builtInItems su true.
Vedere anche
| menuSelect | Evento |
flash.events.ContextMenuEvent
flash.events.ContextMenuEvent.MENU_SELECT
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Inviato quando un utente genera per la prima volta un menu di scelta rapida, ma prima che il contenuto del menu venga visualizzato. Questo consente al programma di modificare il set delle voci del menu di scelta rapida prima di visualizzare il menu. L'utente genera il menu di scelta rapida facendo clic con il pulsante destro del dispositivo di puntamento.
Definisce il valore della proprietàtype di un oggetto evento menuSelect.
Questo evento ha le seguenti proprietà:
| Proprietà | Valore |
|---|---|
bubbles | false |
cancelable | false; non è presente alcun comportamento predefinito da annullare. |
contextMenuOwner | L'oggetto elenco di visualizzazione al quale il menu è associato. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
mouseTarget | L'oggetto elenco di visualizzazione su cui l'utente ha fatto clic con il pulsante destro per visualizzare il menu di scelta rapida. |
target | L'oggetto ContextMenu che sta per essere visualizzato. Il target non è sempre l'oggetto contenuto nell'elenco di visualizzazione, che ha registrato il listener di eventi. Utilizzare la proprietà currentTarget per accedere all'oggetto nell'elenco di visualizzazione, che sta elaborando l'evento. |
ContextMenuExample per rimuovere dallo stage le voci di menu di scelta rapida predefinite e aggiungere una nuova voce di menu che, quando si fa clic su di essa, cambia il colore di un quadratino sullo stage. Questa operazione viene eseguita mediante la procedura seguente:
myContextMenu viene dichiarata e quindi assegnata a un nuovo oggetto ContextMenu, quindi viene dichiarata una proprietà redRectangle del tipo Sprite.removeDefaultItems(), che rimuove tutte le voci incorporate del menu di scelta rapida ad eccezione di Print.addCustomMenuItems(), che inserisce la voce di menu Red to Black nell'array defaultItems utilizzando il metodo push() di Array. Viene aggiunto un listener di eventi menuItemSelect all'oggetto ContextMenuItem e viene chiamato il metodo associato menuItemSelectHandler(). Questo metodo genera alcune istruzioni mediante trace() ogni volta che viene aperto il menu di scelta rapida e viene selezionata la voce Red to Black. Inoltre, il quadrato rosso viene rimosso e viene sostituito da uno nero.menuSelect, insieme al metodo associato menuSelectHandler, che si limita a generare tre istruzioni mediante trace() ogni volta che viene aperta una voce del menu di scelta rapida.addChildren() disegna un quadrato rosso e lo aggiunge all'elenco di visualizzazione nel quale viene visualizzato immediatamente.myContextMenu viene assegato al menu di sceta rapida dello sprite redRectangle in modo che il menu di scelta rapida venga visualizzato solo quando il puntatore del mouse si trova sopra il quadrato.
package {
import flash.ui.ContextMenu;
import flash.ui.ContextMenuItem;
import flash.ui.ContextMenuBuiltInItems;
import flash.events.ContextMenuEvent;
import flash.events.ContextMenuEvent;
import flash.display.Sprite;
import flash.display.Shape;
import flash.text.TextField;
public class ContextMenuExample 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 ContextMenuExample() {
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;
}
}
}
Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti
Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/ui/ContextMenu.html