![]() ![]() ![]() | |
![]() | |
![]() | |
![]() |
Flash Player 7.
La clase ContextMenu proporciona el control de tiempo de ejecución de los elementos del menú contextual de Flash Player, que aparece al hacer clic con el botón derecho del ratón (Windows) o presionar la tecla Control y hacer clic (Macintosh) en Flash Player. Los métodos y las propiedades de la clase ContextMenu pueden utilizarse para agregar elementos de menú personalizados, controlar la visualización de los elementos de menú contextual incorporados (por ejemplo, Acercar e Imprimir) o crear copias de menús.
Puede asociarse un objeto ContextMenu a un botón, un clip de película o un objeto de campo de texto específico o a nivel de toda la película. Para ello, se utiliza la propiedad menu
de las clases Button, MovieClip o TextField. Para más información sobre la propiedad menu
, consulte Button.menu
, MovieClip.menu
y TextField.menu
.
Para agregar nuevos elementos a un objeto ContextMenu, debe crear un objeto ContextMenuItem y, a continuación, agregar dicho objeto a la matriz ContextMenu.customItems
. Para más información sobre la creación de elementos de menú contextual, consulte la entrada Clase ContextMenuItem.
Flash Player tiene tres tipos de menús contextuales: el menú estándar (que aparece al hacer clic con el botón derecho del ratón en Flash Player), el menú de edición (que aparece al hacer clic con el botón derecho del ratón en un campo de texto seleccionable o editable) y un menú de error (que aparece cuando un archivo SWF no puede cargarse en Flash Player). Con la clase ContextMenu sólo pueden modificarse el menú estándar y el de edición.
Los elementos de menú personalizados siempre aparecen en la parte superior del menú contextual de Flash Player, por encima de cualquier elemento de menú incorporado visible; los elementos de menú incorporados y los personalizados se separan mediante una barra de división. Un menú contextual no puede tener más de 15 elementos de menú personalizados.
Debe utilizar el constructor new ContextMenu()
para crear un objeto ContextMenu antes de llamar a sus métodos.
Método |
Descripción |
---|---|
Devuelve una copia del objeto ContextMenu especificado. |
|
Oculta la mayoría de los elementos incorporados en el menú contextual de Flash Player. |
Propiedad |
Descripción |
---|---|
Objeto cuyos miembros corresponden a elementos incorporados del menú contextual. |
|
Matriz, que de forma predeterminada no está definida, que contiene objetos ContextMenuItem. |
Propiedad |
Descripción |
---|---|
Invocado antes de mostrar el menú. |
Flash Player 7.
new ContextMenu ([callBackFunction
])
callBackFunction
Referencia a una función que se llama cuando el usuario hace clic con el botón derecho del ratón o hace clic con la tecla Control presionada antes de visualizar el menú. Este parámetro es opcional.
Ninguno.
Constructor; crea un objeto ContextMenu nuevo. De manera opcional, puede especificarse un identificador para un controlador de eventos al crear el objeto. La función especificada se llama cuando el usuario invoca el menú contextual, pero antes de que el menú se visualice. Esto es muy útil para personalizar el contenido del menú en función del estado de la aplicación o del tipo de objeto (clip de película, campo de texto o botón) en el que el usuario hace clic con el botón derecho del ratón o hace clic con la tecla Control presionada. Para ver un ejemplo de creación de un controlador de eventos, véase ContextMenu.onSelect
.
En el ejemplo siguiente se ocultan los objetos incorporados del menú contextual. No obstante, los elementos Configuración y Acerca de siguen apareciendo, porque no pueden desactivarse.
var newMenu = new ContextMenu(); newMenu.hideBuiltInItems(); _root.menu = newMenu;
En este ejemplo, el controlador de eventos especificado, menuHandler
, activa o desactiva el elemento de menú personalizado (utilizando la matriz ContextMenu.customItems
) en función del valor de una variable booleana denominada showItem
. Si el valor es false
, el elemento de menú personalizado se desactiva; de lo contrario, se activa.
var showItem = false; // Cambiar este valor a true para ver su efecto my_cm = new ContextMenu(menuHandler); my_cm.customItems.push(new ContextMenuItem("Hola", itemHandler)); function menuHandler(obj, menuObj) { if (showItem == false) { menuObj.customItems[0].enabled = false; } else { menuObj.customItems[0].enabled = true; } } function itemHandler(obj, item) { } _root.menu = my_cm;
Button.menu
, ContextMenu.onSelect
, ContextMenu.customItems
, ContextMenu.hideBuiltInItems()
, MovieClip.menu
, TextField.menu
![]() | |
![]() | |
![]() | |
![]() ![]() ![]() |