Foros del Web » Creando para Internet » Flash y Actionscript »

menús y actionscript

Estas en el tema de menús y actionscript en el foro de Flash y Actionscript en Foros del Web. hola. podría alguien pasarme un fla donde hay un menú más o menos "complicado"? es decir, yo sé lo básico de actionscript, y cuando me ...
  #1 (permalink)  
Antiguo 11/04/2003, 19:51
 
Fecha de Ingreso: enero-2002
Mensajes: 66
Antigüedad: 15 años, 10 meses
Puntos: 0
menús y actionscript

hola.

podría alguien pasarme un fla donde hay un menú más o menos "complicado"?

es decir, yo sé lo básico de actionscript, y cuando me meto con variables y cosas así, con "if", "other" y todo eso, pues me pierdo y no sé hacer nada.

por eso mis menús son muy limitados y no puedo hacer un buen uso de submenús o desplegables.

podría alguien pasarme algún menú más o menos complejo que haya hecho para ver el código y tratar de comprender cómo hacerlo.

gracias.
  #2 (permalink)  
Antiguo 12/04/2003, 20:42
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 15 años, 11 meses
Puntos: 193
Que tal!!

Bueno aquie te pongo un ejemplo de como crear un Meni con Submenus cargando los datos por medio de XML.

Source.xml

Código:
<?xml version="1.0" encoding="iso-8859-1"?>
<menu> 
  <topicos name="Buscadores"> 
    <sitio name="Google" url="http://www.google.com"/> 
    <sitio name="Altavista" url="http://www.altavista.com"/> 
  </topicos> 
  <topicos name="Foros">
    <sitio name="Flashla" url="http://www.flashla.com/forums"/> 
    <sitio name="Nomaster" url="http://www.nomaster.com"/> 
	<sitio name="Alesys" url="http://www.alesys.net/foro"/> 
 </topicos>	
  <topicos name="Fla's">
    <sitio name="Kadazuro" url="http://www.kadazuro.com"/> 
    <sitio name="Alesys" url="http://www.alesys.net/foro"/> 
	<sitio name="FlashKit" url="http://www.flashkit.com"/> 
 </topicos>	
</menu>
Bien Ahora el ActionScript

Código:
objeto = new XML();
objeto.ignoreWhite = true;
objeto.load("source.xml");
objeto.onLoad = duplica;
//array para Borrar Botones del SubMenu
clips = [];
//Creamos los Botones con la Info de los "segundos"
function duplica() {
	nodo = this.firstChild;
	basex = 10;
	basey = 10;
	total = nodo.childNodes.length;
	for (a=0; a<total; a++) {
		this["menu"+a] = attachMovie("Menu", "Menu"+a, a);
		this["menu"+a].label.text = nodo.childNodes[a].attributes.name;
		this["menu"+a]._x = basex;
		this["menu"+a]._y = basey;
		this["menu"+a].basex1 = basex;
		nueColor = new Color(this["menu"+a].fondo);
		nueColor.setRGB(0xC5C5C5);
		//Mandamos el Tercer Nodo para utilizarlo despues =P
		this["menu"+a].nodo = nodo.childNodes[a].childNodes;
		basex = basex+this["menu"+a]._width+1;
	}
}
function creaNombres(nodo, basex1) {
	basey1 = 25;
	cuantosNom = nodo.length;
	//trace(cuantosNom);
	for (a=0; a<cuantosNom; a++) {
		//trace(nodo[a]);
		//atachamos Botones y los mandamos para arriba del nivel 30
		this["submenu"+a] = attachMovie("SubMenu", "submenu"+a, a+30);
		this["submenu"+a]._x = basex1;
		this["submenu"+a]._y = basey1;
		this["submenu"+a].label.text = nodo[a].attributes.name;
		this["submenu"+a].dir = nodo[a].attributes.url;
		//Metemos los Clips en un array para despues borrarlos Mas facilmente
		clips.push(this["submenu"+a]);
		basey1 = basey1+15;
	}
}
this.onMouseDown = function() {
	for (a=0; a<clips.length; a++) {
		clips[a]._visible = false;
	}
};
Claro tienes que crear un par de Clips que seran los Botones Principales y secundarios Cada uno con una programacion diferente.

MC Menu
Código:
inv_btn.onRollOver = function() {
	nueColor = new Color(fondo);
	nueColor.setRGB(0x9C9C9C);
};
inv_btn.onRollOut = function() {
	nueColor = new Color(fondo);
	nueColor.setRGB(0xC5C5C5);
};
inv_btn.onRelease = function() {
	//Borramos los Botones que anteriores
	for (a=0; a<_parent.clips.length; a++) {
		_parent.clips[a]._visible = false;
	}
	//Llamamos a la Funcion que crea los botones Secundarios.
	_parent.creaNombres(nodo, basex1);
};
y el AS del MC SubMenu

Código:
inv_btn.onRelease = function() {
	getURL(dir, "_blank");
	//trace(dir);
};
inv_btn.onRollOver = function() {
	nueColor = new Color(fondo);
	nueColor.setRGB(0xC5C5C5);
};
inv_btn.onRollOut = function() {
	nueColor = new Color(fondo);
	nueColor.setRGB(0xFFFFFF);
};
Y esto seria Todo! Facil Nop!

De cualquier forma aqui esta el Fla y el XML
http://www.arbeitstudio.com/publi/xml.zip

Saludos!!
  #3 (permalink)  
Antiguo 13/04/2003, 10:42
 
Fecha de Ingreso: enero-2002
Mensajes: 66
Antigüedad: 15 años, 10 meses
Puntos: 0
dios mío!



dios mío, si consigo hacer esto no me lo creeré ni yo!

me pareció haber dicho que no entendía mucho de actionscript, pero bueno, ya veo que me lo has querido poner complicado, TMesister.

gracias, anyway
  #4 (permalink)  
Antiguo 13/04/2003, 13:28
Avatar de TMeister
Crazy Coder
 
Fecha de Ingreso: enero-2002
Ubicación: En la Oficina
Mensajes: 2.880
Antigüedad: 15 años, 11 meses
Puntos: 193
Re: menús y actionscript

Cita:
Mensaje Original por gopherX
hola.

podría alguien pasarme un fla donde hay un menú más o menos "complicado"?

podría alguien pasarme algún menú más o menos complejo que haya hecho para ver el código y tratar de comprender cómo hacerlo.

gracias.
Bueno Tu pediste algo mas o menos Complejo y eso fue lo que postee Pero en realidad no es nada del otro mundo

Saludos!!
  #5 (permalink)  
Antiguo 21/10/2007, 14:45
Avatar de ramon92  
Fecha de Ingreso: enero-2004
Ubicación: Lima
Mensajes: 135
Antigüedad: 13 años, 10 meses
Puntos: 8
Re: menús y actionscript

Hola Tmeister, me parecio interesante tu menu, recien me puse a curiociar y me doy contra la pared porque todavia no puedo hacer funcionar el link, quisiera saber si me puedes hayudar con estos detallitos, y si fuece posible hacer sub sub menu te lo agradeceria.

Subo el fla aver si le puedes dar una ojeada

[Descargar]
__________________
Hosting Peru.ME | Hosting para Empresas
Agencia de Publicidad Online (Enjoy the difference)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:15.