La clase ContextMenuItem se utiliza para crear elementos de menú personalizados y visualizarlos en el menú contextual de Flash Player. Cada objeto ContextMenuItem tiene un tí tulo (texto) que se visualiza en el menú contextual y un controlador callback (función) que se invoca al seleccionar el elemento de menú.
Si bien las opciones que se han insertado en este menú, pueden parecer identicas a las que proporciona Flash Player, fijate que las acciones afectan tan solo al clip de pelí cula que activa el menú contextual.
Se esconden la mayorí a de opciones por defecto.
var miMenuContextual = new ContextMenu(); miMenuContextual.hideBuiltInItems();
Cada variable contiene una nueva instancia de la clase ContextMenuItem el primer parámetro es el texto que muestra el menú contextual , el segundo es la función (callBak) que se ejecuta al seleccionar la opción.
var aumentar = new ContextMenuItem("Aumentar Imagen", aumentar, false);
var reducir = new ContextMenuItem("Reducir Imagen", reducir);
var original = new ContextMenuItem("100 %", original);
var descargar = new ContextMenuItem("Download", descargar);
La propiedad separatorBefore inserta una barra separadora antes del elemento especificado, en este caso, antes de ‘Download’
descargar.separatorBefore = true;
CustomItems es una matriz de objetos de la clase ContextMenuItem cada objeto de la matriz representa un elemento del menú. aquí , añadimos los elementos del menú utilizando Array.push
miMenuContextual.customItems.push(aumentar); miMenuContextual.customItems.push(reducir); miMenuContextual.customItems.push(original); miMenuContextual.customItems.push(descargar);
En alguna de las funciones, se utiliza la propiedad enabled, para establecer si un determinado elemento del menú está disponible
function aumentar() {
aumentar.enabled = false;
mc._xscale *= 2;
mc._yscale *= 2;
}
// --
function reducir() {
aumentar.enabled = true;
mc._xscale /= 2;
mc._yscale /= 2;
}
// --
function original() {
aumentar.enabled = true;
mc._xscale = 100;
mc._yscale = 100;
}
// --
function descargar() {
getURL("http://www.after-hours.org/blog/as/menuContextual/imgBig.zip");
}
Asocia el objeto ContextMenu al objeto MovieClip ‘mc’
mc.menu = miMenuContextual;
Descargar ejemplo
http://www.after-hours.org/blog/as/menuContextual/menuContextual.zip
Mayo 29th, 2004 at 7:17 pm
no puedo verlo, no se me carga la pelicula
Mayo 29th, 2004 at 11:54 pm
tienes el player 7 ??
Toni, gracias por el ejemplo me has abierto los ojos, ya es hora de empezar a tocar al 2k4…
Mayo 30th, 2004 at 1:37 am
Brillante como siempre !
Mayo 30th, 2004 at 3:35 pm
Ya lo ví , jeje perfect
Marzo 5th, 2006 at 12:23 am
saludos! que sucede si pretendo crear un submenu dentro del menu contextual tal como el submenu calidad (que posee tres items dentro) Es posible?
gracias!