Comunidad de diseño web y desarrollo en internet online

Como montar mi menu a mi fondo?

Citar            
MensajeEscrito el 23 Jun 2008 07:07 pm
Hola a todos amigos, pues bien me encuentro con ese problema...

Hice mi pelicula con un fondo que se adapata al tamaño de la pantalla, ajustando una imagen de fondo sin distorcionarla redimensionandola al tamaño de la ventana del navegardor.

Y tengo otra pelicula donde hice un menu que tbm se ajusta a la posicion derecha de mi ventana siempre, ajustando un MC que al alto de mi ventana, al mismo tiempo tengo otros MC en mi menu que se posicionan en la parte superior, medio e inferior de mi ventana.

Ambas peliculas me funcionan muy bien...

Mi problema esta en ahora que ya termine ambas peliculas como puedo poner mi menu encima de mi pelicula de fondo...

he intentado mandando a llamar a mi pelicula del menu con

Código :

loadMovie("menu.swf", 2);


con eso funciona, poniendo mi menu encima de mi pelicula de fondo...

Pero al parecer mis codigos de ambas peliculas salen peleados y mi fondo ya no se ajusta a toda la ventana, sale cortado a la mitad...

alguien podria hecharle un vistazo y ayudarme a entender que es lo que ocurre?

Para ajustar mi imagen al tamaño completo de la ventana sin distorcionarla y redimensionandola al tamaño total uso este codigo:

Código :

function escalaFondo()
{
    if (Stage.width > Stage.height)
    {
        fondo._width = Stage.width;
        fondo._yscale = fondo._xscale;
    }
    else
    {
        fondo._height = Stage.height;
        fondo._xscale = fondo._yscale;
    } // end else if
    fondo._x = (StageWidth - fondo._width) / 2;
    fondo._y = (StageHeight - fondo._height) / 2;
} // End of the function
Stage.scaleMode = "noscale";
var StageWidth = 550;
var StageHeight = 400;
Stage.addListener(this);
this.onResize = escalaFondo;
escalaFondo();

stop ();


donde "fondo" es el nombre de instancia de un MC que contiene mi imagen
con una resolucion de 1700 x 1700 px ....


Y para mi menu:

Código :

function init() { 
   //
    var stuff = new Object(); 
    // 
   stuff.onResize = function(){
      stretchIt();
   }
   //
   function stretchIt(){
      //lateral
      lateral._x = Stage.width - lateral._width-5;
      lateral._y = 0;
      lateral._height = Stage.height;
      //logo
      logo._x = lateral._x+15;
      //Contenedor
      contenedor._x = lateral._x-650;
      //copyright
      copyrigth._x = lateral._x+35;
      copyrigth._y = Stage.height - copyrigth._height-20;
      //opcione-s
      opciones._x = lateral._x+14;
      opciones._y = 156;
   } 
//  
   Stage.scaleMode = "noScale"; 
   Stage.align = "tl"; 
   Stage.addListener(stuff); 
   stretchIt();
}

// Llamamos a la Funcion "Init"
init(); 
stop();


Donde: "logo" , "lateral" , "copyright" , "opciones" son los nombres de instancia de los MC que uso y se posicionan en una ubicacion asignada.

"logo"en la parte superior,
"lateral" ajustandose al alto de mi ventana,
"copyright" en la parte inferior,
"opciones" debajo del logo.

Alguna idea de lo que sucede?

Espero que mis archivos y los codigos les sean utiles a alguno.

Saludos a todos y de antemando gracias por leer. :crap:

Por LÄRÇ

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 23 Jun 2008 10:07 pm
A ver, donde esta el fondo, y le menu, son dos peliculas distintas??
Si es asi, en ambas usar el Objecto Stage, para redimensionarlas y ubicarlas en el espacio??

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 23 Jun 2008 10:10 pm
Si ambas son 2 peliculas distintas, en ambas uso el objeto Stage para poder redimensionarlas.

Por LÄRÇ

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 23 Jun 2008 10:14 pm
Mira este es mi fondo:
www.frida.com.mx/fondo.rar

y este mi menu:
www.frida.com.mx/menu.rar


si es que no me explico bien.

Por LÄRÇ

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 23 Jun 2008 11:24 pm

LÄRÇ escribió:

Si ambas son 2 peliculas distintas, en ambas uso el objeto Stage para poder redimensionarlas.


Ok, para empezar vas a usar solamente una instancia del objeto Stage, y esto sera en la pelicula principal, Unicamente ahi

En un pelicula menu, lo va a meter todo en un clip(El menu, el fondo, la marca etc.), no es necesario estar reubicando tres clips, cuando puedes nada mas reubicar un contenedor principal. Esta pelicula menu, va a medir lo que mida menu, nada mas.

Para cargar el menu, no uses loadmovie, usa MovieclipLoader

Esto porque menu no lo vas a cargar en un nivel, lo vas a cargar en un clip, dicho clip lo vas a manipular desde el Fondo, en la funcion escalaFondo()

Por ultimo, en tu pelicula menu, usa la sentencia this._lockroot = true; pra evitar conflictos de variables.

Al parecer el usar al objeto Stage en ambas peliculas, esta causando el conflicto

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 24 Jun 2008 12:09 am
Hola muchisimas gracias por tu respuesta Ramiro, pues lo intento como me dices pero sigue sin funcionarme :(

los clio de mi pelicula menu los hice por separado, para poder asiganarles una posision a cada uno diferente.

Por LÄRÇ

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 24 Jun 2008 04:38 pm

LÄRÇ escribió:

Hola muchisimas gracias por tu respuesta Ramiro, pues lo intento como me dices pero sigue sin funcionarme :(

los clio de mi pelicula menu los hice por separado, para poder asiganarles una posision a cada uno diferente.


Hay un problema con la alineacion, y el objeto Stage
Al usar Stage.align se resuelve lo de el menu, pero el fondo falla.
Creo que hay que buscar alguna otra opcion para el efecto del fondo

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 24 Jun 2008 04:43 pm
amigo creo que ya encontre una solucion...

Mira en el codigo de mi fondo en la parte de :

Código :


    fondo._x = (StageWidth - fondo._width) / 2;
    fondo._y = (StageHeight - fondo._height) / 2;

//Le cambio en fondo._x a  / 800  quedando as:

    fondo._x = (StageWidth - fondo._width) / 800;
    fondo._y = (StageHeight - fondo._height) / 2;



Y al parecer se soluciona.

Todo eso mandando a llamar mi pelicula de la misma forma:

[code]
loadMovie("menu.swf", 2");
[/code[

Pero tambien en el codigo de mi menu coloque la sentencia this._lockroot = true;
para intentar evitar los conflictos de mis codigos.

Sigo viendo otras posibilidades y soluciones.

Por LÄRÇ

11 de clabLevel



Genero:Masculino  

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.