Bueno, no se si soy el único que ha tenido este problemita, pero como me he estado partiendo la cabeza un par de días para intentar resolverlo y todos los gurus de flash que ponían tutoriales no tocaban puntualmente el tema (será que era demasiado obvio y yo soy un newbie ).
Entonces, de lo que quiero hablarles pequeños es "Como demonios se yo donde esta el punto 0 de una película flash cuando estoy empleando un Stage.scaleMode = "noScale";" ?
Bien, lo primero resolver un pequeño misterio, flash, cuando le ordenamos que ajuste el scaleMode sea noScale (es decir que no distorcione los tamaños de los mc), tiende a centrar la película. Por ende, si nuestra película mide 500 pixeles de ancho, cuando el Stage (o FlashPlayer, como quieran decirle) mide 600 pixeles de ancho, el punto 0 de la película se encuentra en -50. Esto hace que si por ejemplo ajustasemos el mc que usamos de fondo de la web, se "desplace" en la pantalla.
Entonces, existen miles de formas para resolver esto, la forma rápida y a prueba de idiotas (usease yo) es esta:
Código :
Stage.scaleMode = "noScale"; function posicionar(){ ceroX = (1000 - Stage.width)/2; ceroY = (560 - Stage.height)/2; cont._x = ceroX + 5; cont._y = ceroY + 5; cont._width = Stage.width - 10; cont._height = Stage.height - 10; } var stageListener:Object = new Object(); stageListener.onResize = function(evt:Object) { posicionar(); } Stage.addListener(stageListener); posicionar();
Como se puede ver, le asigno a cont (que es un recuadro gris) la posición basandome en las variables ceroX y ceroY, de forma que no importa que tanto se distorcione o varíe el Stage, su posición siempre será la del punto cero que ve el usuario y no el original (que andará por China o Estambul ).
Deniam
P.D.: En el ejemplo se ve que a los valores sumo o resto 5 o 10, esto es para que el recuadro gris deje un margen de 5 pixeles.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Hector el 07 de Marzo de 2007
Stage.align = "TL";
Ya lo tienes
Por GersonM el 07 de Marzo de 2007
Por Angel polanco el 19 de Marzo de 2007
Por lookout el 13 de Abril de 2007
el anclaje "TL" como dicen... no sirve para lo que estoy estableciendo. por que si bien es mas facil obtener el punto x0 y0 , no sirve de nada si no podemos obtener los otros 3 valores. Ancles donde Ancles, siempre tendras que usar programacion para la diagramacion liquida... yo recomiendo siempre un anclaje "T" para, en ultima instancia cuando la pantalla es mas chica que el contenido, generar ese scrollbar. una ves echo esto, central el contenido, o anclarlo donde quieras es simplemente añadir una o dos lineas de codigo...
Por tatolc el 14 de Abril de 2007
Es más que interesante.
Si pudierais poner enlaces a más explicaciones seria estupendo, ya que lo único que encuentro son discusiones sobre el tema pero no arrojan ni una linea de explicación sobre como hacerlo bien. por que yo se que esto se puede hacer y bien y si no miren esta página:
http://www.trisquel.com
o esta otra:
http://www.adobe.com/uk/creativefreedom/
un saludo y a seguir evolucionando internet
Por 8jho el 06 de Mayo de 2007
Por apuerta el 13 de Septiembre de 2007
El problema es que la imagen que esta en el fondo se adapta al stage pero distorssionada, me guataria que se adaptara pero sin distorsionar.
Este me redimensiona correctamente la imagen del fondo:
http://opcion1.net/luis/escalarFondo.swf
Este me lo adapta todo al stage, pero la imagen la deforma (cambia el stage)
http://opcion1.net/luis/home.swf
Me gustaria que se adaptara todo al stage, pero que la imagen no se distorsionara.
Creo que el problema esta en Stage.align = "TL";
Me podrias echar una mano?
Gracias de nuevo
Por SaSuK3 el 19 de Diciembre de 2007
El código de D3N14M, vamos para que 0 sea siempre 0 y poder colocar mejro en mc´s las cosas... donde se pone éste código???
llevo dias leyendo y leyendo y no pillo nada, un librin online no hay? salu2
Por d:e:m el 18 de Enero de 2008
En el segundo ejemplo que has puesto (http://opcion1.net/luis/home.swf), cómo consigues el menú de abajo, que al redimensionar la ventana se mantiene abajo??
Y el fondo del menú?
Este efecto lo he visto en varias webs y no lo consigo, a ver si me podéis ayudar.
Gracias de antemano...
Por lordmarius el 03 de Junio de 2008
Me parece utilísimo el consejo, me ha ayudado mucho. Pero necesito que un elemento (por ejemplo un botón) se ajuste siempre abajo en el navegador. En definitiva, necesito saber cómo localizar el valor de la parte más baja del Stage (porque poniendo [b]mc_boton._y = Stage.height - mc_boton._height[b] no lo ajusta)
Gracias
Por larrasnbk el 26 de Septiembre de 2008
Por BUENISIMO! el 10 de Noviembre de 2008
Muchas gracias de nuevo
Por ,jjgjgjyhgy el 07 de Marzo de 2009
Por elchimu el 10 de Marzo de 2009
porque lo unicoque busco es poner una imagen que cubra el 100% del fondo.
gracias
Por Leandro el 27 de Octubre de 2009
el problema que tengo es que cuando la veo en un monitor de 15 pulgadas me corta el contenido mi pelicula es de 1000 x 550 px quiero que me salga un scrol cuando la pelicula no entre en el monitor y eh buscado por todos lados y no encuentro repuesta desde ya muchas gracias si alguien me puede ayudar estoy deseperado tengo queentregar la web muchos gracias
Por Colitoar el 13 de Noviembre de 2009
Por diefer72 el 24 de Enero de 2010
Por Joel el 02 de Febrero de 2010
Por simon el 15 de Marzo de 2010
para que el HTML te salga adecuado a la diagramacion liquida, lo haces desde flash. abres "archivo/configuracion de la publicacion o file/Publish setting" o (Ctrl+Shift+F12) y ahi seleccionas la publicacion del archivo html. Te aparecerá una pestaña de configuracion HTML, la pulsas, y en ella simplemente modificas esto: Dimensions:Percet y Scale:No scale.
Y ya.
Por delbayo el 27 de Abril de 2010