06/08/2010, 19:38
|
| | Fecha de Ingreso: enero-2008 Ubicación: Concepción, Chile
Mensajes: 76
Antigüedad: 16 años, 9 meses Puntos: 3 | |
Respuesta: No puedo con el menú contextual !! Cita:
Iniciado por javichux Hola a todos!! Llevo muy poquito dentro de flash. He creado un archivo 1.swf con CS4 que hace el efecto de "contenedor" con un código que me llama a otro archivo 2.swf existente que digamos que realiza la función de "contenido".
Hasta aquí, ningún problema.
Pero ahora, lo que quiero es poder modificar el menú contextual del archivo 1.swf ("contenedor"), para poder adaptar el menú contextual a mis necesidades.
He buscado muchísimo por la web y todas las opciones que he encontrado para variar el menú, no ha funcionado ninguna. Incluso le he aplicad el código para que
no apareciese y no hay manera. Aparece siempre el menú contextual del archivo 2.swf ("contenido") que es llamado.
Entonces, por lo que veo, ¿Cuando un archivo swf, es llamado dentro de otro, prevalece el menú contextual del archivo llamado, sin posibilidad de crear un menú personalizado en el archivo contenedor?
Bueno, mil gracias por vuestra atención y vuestro tiempo.
Editado: Se me olvidaba, utilizo AS3. Amigo ahí va una rutina que te puede ayudar solo es un primer paso.
Código ACTIONSCRIPT:
Ver originalimport flash.net.URLRequest; import flash.net.URLLoader; import flash.net.* var menu:ContextMenu = new ContextMenu ; menu.hideBuiltInItems(); var arreglolinks:Array = new Array("http://www.google.cl/::GOOGLE", "http://www.lun.cl/::LUN"); var totallinks:Number = arreglolinks.length; var vinculo:Array = new Array(); init(); function init():void{ var i:Number = 0; for(i=0;i<totallinks;i++){ var tmp:Array = arreglolinks[i].split("::"); var elemento:ContextMenuItem = new ContextMenuItem(tmp[1]); elemento.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,linkear); menu.customItems.push(elemento); } this.contextMenu=menu; } function linkear(e:ContextMenuEvent):void{ var a:String=e.currentTarget.caption; var i:Number = 0; for(i=0;i<totallinks;i++){ var tmp:Array = arreglolinks[i].split("::"); if(a==tmp[1]){ trace(tmp[0]); if(tmp[0]){ var targetURL:URLRequest=new URLRequest(tmp[0]); navigateToURL(targetURL, "_blank"); } } } }
Espero te sea de ayuda.
Saluda Atte.
Claudio Barrera Asencio. |