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

Abrir una ventana nueva con un SWF..

Estas en el tema de Abrir una ventana nueva con un SWF.. en el foro de Flash y Actionscript en Foros del Web. A ver, a ver si me ayudan.... Tengo mi swf principal y quiero que al presionar por ej, un boton me abra OTRA ventana (se ...
  #1 (permalink)  
Antiguo 17/06/2003, 08:41
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Abrir una ventana nueva con un SWF..

A ver, a ver si me ayudan....
Tengo mi swf principal y quiero que al presionar por ej, un boton me abra OTRA ventana (se entiende? que no remplace el swf que estoy viendo por el otro) con un swf distinto.
Por ejemplo, en mi swf principal tengo una seccion de juegos y al ingresar puedo elegir entre alguno de ellos para jugar. No quiero que se cierre o pierda mi flash principal, por eso no me sirven los niveles... quiero que sea otra ventana independiente.
Espero haber sido clara.
Busque en respuestas pasadas pero nadie ha hablado este caso en especial.
Es para un CD multimedia, no para un sitio Web.
GRACIAS!!!

Un besito.

__________________
Flavia.
  #2 (permalink)  
Antiguo 17/06/2003, 10:37
Avatar de juwe  
Fecha de Ingreso: abril-2001
Ubicación: Guadalupe Inn
Mensajes: 622
Antigüedad: 16 años, 7 meses
Puntos: 0
Hola Flavia, desgraciadamente para abrir ventanas independientes de navegador necesitas de Javascript, sin embargo, puedes hacer algo parecido con un exec, es decir, guardas tu juego como un ejecutable, y lo mandas llamar con un exec.
Código:
on (release){
   fscommand ("exec","tu_ejecutable.exe")
}
Y el ejecutable debe estar al tamaño que quieres que se muestre.

Saludos desde México.
__________________
blog.juwestudio
  #3 (permalink)  
Antiguo 18/06/2003, 03:46
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
y bueno... gracias!
Vere de hacer esa opcion...
Con Javascript seria muy complicado?

Probe lo siguiente:

on (press) {
getURL ("javascript:void(window.open('pp.html','Popup_Win dow','toolbar=no,location=no,status=no,menubar=no, scrollbars=no,resizable=no,width=525,height=420,to p=0,left=0'))");
}

Pero me abre 2 ventanas y en ninguna de las 2 muestra mas que un mensaje de error...

Tambien he probado lo que explica Maltos en tantas respuestas... eso de crear un clip vacio y eso... pero no logro que salga dentro del cuadrado que dibuje en el clip.... me sale siempre a la izq, arriba de todo. Y eso que he probado de ponerle x e y.
Pongo tambien el codigo:

En el boton:
on (press) {
gotoAndStop(165);
}

En el frame 165:
loadMovie("juego.swf", 1);
_level1._juego=200;
stop;

(No es la unica prueba que he hecho... pero haga lo que haga me sale igual... o me reemplaza la principal por la nueva con el tamaño del clip... ) Yo quisiera que solo abriera el clip en ese cuadrado.

GRACIAS!!!!!!!!!!!!!!!!!!!!!!!!!
Espero respuestas!
__________________
Flavia.
  #4 (permalink)  
Antiguo 18/06/2003, 06:23
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Ponelos en contenedores (que no son otra cosa que mc..), pero como es un componente, viene listo para usar..

Lo pones donde tu quieras y puedes tener todos los que quieras al mismo tiempo, y funcionan independiente el uno del otro.

Saludos
__________________
http://www.flotdesign.dk/
  #5 (permalink)  
Antiguo 18/06/2003, 09:41
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Doblemente gracias PULENTO porque has respondido a mis dos mensajes!
Te cuento que lo hago de esta forma...
En el frame:

loadMovie("juego.swf", 1);

y en la otra pelicula (el swf) en el primer frame:

this._x=110;
this._y=40;

y es la unica manera que me sale mas o menos lo que quiero...

Porque haciendolo con un clip lo que me hace es redimencionar TODO al tamaño del clip y yo no quiero eso... porque sino pierdo el margen y los botones que me permiten volver al menu principal.
Si vos sabes como hacerlo decime y pruebo!
GRACIAS de nuevo!
__________________
Flavia.
  #6 (permalink)  
Antiguo 18/06/2003, 14:28
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Flavia (me encanta tu nick..!)
Te cuento que ya que desconosco la estructura de tu .fla me queda solamente imaginarme...

Yo haria lo sgte.
crearia uno o mas mc vacios el la linea de tiempo prinsipal. (Se que eso no te entuciasma mucho pero una vez que se la pillas.. veras la poderosa herramienta que es esta)

En el primer frame de tu linea de tiempo pones->

for(i=0;i<3;i++){
createEmptyMovieClip("mc"+i,i);
_root["mc"+i]._x = i*150;
_root["mc"+i]._y = 10;
}//for

Esto crea los mc vacios (en este caso 3) y le suma 150 a la pos del _x de cada mc que sale del horno .. el _y es el mismo.(tu acomodas estas pos a tu gusto)

Ahora que los mc's existen y estan posicionados ahi que usarlos..
Este codigo te cargara un nuevo swf en el mc0 (el primero que creamos)->

mc0.onEnterFrame = function(){
loadMovie("tunuevoswf.swf",_root.mc0);
}

esto lo hace en el momento en forma automatica, si lo quieres controlar ->

mc0.onRelease = function(){
loadMovie("tunuevoswf.swf",_root.mc0);

}

Si se te complica o no entiendes me cuentas.....
o mejor ahun mandame los .fla


Saludos
__________________
http://www.flotdesign.dk/
  #7 (permalink)  
Antiguo 19/06/2003, 04:20
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Pulento...

GRacias de nuevo!
Mi nick... es mi nombre...

Te cuento lo que hice... siguiendo + o - tu consejo... (si es que no lo logro te envio el fla pero lo que pasa es que es ENORME porque no tiene solo esto... pero bueno, de ultima preparo un mas chico)
Tengo en mi libreria un clip que tiene solo un recuadro (4 lineas) que se llama MC1.

Puse esto como accion del frame al que llamo con un boton:

Accion del frame 165:
i=0;
createEmptyMovieClip("MC1"+i,i);
_root["MC1"+i]._x = i*150;
_root["MC1"+i]._y = 10;
loadMovie("juego.swf",_root.MC10);
stop;

//No hice un FOR porque en realidad necesito solo UN movie.

Accion del boton con que llamo al frame:
on (press) {
gotoAndStop(165);
}

Y lo que hace es mostrarme el swf dentro de mi pelicula pero arriba a la izquierda (en el punto 0.0) y no incluye el mc.

Me diras....

Saludos!!

----------------------------------------------------------------------------------
Obviamente que este mensaje se va a pegar al que hice hace un ratito.... pero....
TODAVIA ESTOY DORMIDA!!!! porque obviamente que i*150, si i=0, .... da CERO!!!!
Y por eso crei que no me estaba creando el mc....
Pero le cambie el valor de i a UNO y funciono!!
Me lo puso en la mitad de la pantalla! Perfecto!

GRACIAS!!!!!!!!!
__________________
Flavia.
  #8 (permalink)  
Antiguo 19/06/2003, 05:16
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Que bueno que te funciono.........

Te hago un par de aclaraciones para que entiendas el funcionamiento del codigo.:

La funcion que cumple el i es doble

1.-> se usa para darle el nivel al nuevo mc y es por eso que en en for se incrementa para que no caigan dos mc's en el mismo nivel (que era lo que te pasaba ya que el mc prinsipal estaba en el nivel 0).

2.->se usa para darle diferentes pos al mc, en este caso al _x. Como puedes ver multiplico i con 150, Y cuando i vale 0 osea la primera vez el primer mc tendra pos _x =0 y el segundo pos _x = i*150 ,o sea 150 ya que i ahora es vale 1 y luego 2 etc. O sea lo corro 150 pixeles cada vez que hace un nuevo mc.

Te aclaro que puedes crear todos los mc que quieras sin que necesarimente los uses.

Y es por eso que se recomienda crearlos al principio de la linea de tiempo. Lo que importa es el nivel, todos los niveles deben ser diferentes.

En tu caso podrias haber creado el mc al empezar tu movie y mandar a cargar el swf en el frame 165.
De esta manera tienes todo tu codigo en el primer frame y no desparramado en todo el mc. Ya te imaginaras las ventajas funcionales que esto implica.
Codigo reusable, facil de localizar y modificar.

Cualquier cosa aqui estoy y ahora que tengo tiempo ya que termine todos los eksamenes........!

Saludos

Ha y me encanta tu nombre....
__________________
http://www.flotdesign.dk/
  #9 (permalink)  
Antiguo 19/06/2003, 08:24
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Pregunta

MAltos... y no es eso lo que hice? No lo estoy creando en el MC?
Probe con el codigo que me escribiste y no me carga nada... evidentemente algo pongo mal.

createMovieClip("MC1",1);
MC1._x = 100;
MC1._y = 70;
MC1.loadMovie("impiccato3.swf");
stop;

Pero, como me habia explicado Pulento habia logrado hacerlo...
Igualmente eso me daba otros problemas... y es que, como el swf es un juego, al iniciar a jugar es como que sigue de largo y comienza a reproducir toda la pelicula mia + el juego arriba.... cualquier cosa....
Asi que lo deje asi:

En el frame:

loadMovie("impiccato.swf", 1);
stop;


y cambio en el 1er frame del swf la posicion x e y del mismo.

No se si opinaran que es muy feo .... tiene alguna contra hacerlo asi?

Gracias pulento por tus respuestas y felicitaciones por los examenes!

Gracias a ambos!
__________________
Flavia.
  #10 (permalink)  
Antiguo 20/06/2003, 03:20
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Se aburrieron del tema....

si no?
y bueno... cuando uno no sabe o no esta seguro... sigue preguntando....
__________________
Flavia.
  #11 (permalink)  
Antiguo 20/06/2003, 04:54
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Sorry ........pero ....... a que pregunta te refieres.......








Saludos
__________________
http://www.flotdesign.dk/
  #12 (permalink)  
Antiguo 20/06/2003, 08:38
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Cita:
MAltos... y no es eso lo que hice? No lo estoy creando en el MC?
Cita:
No se si opinaran que es muy feo .... tiene alguna contra hacerlo asi?
__________________
Flavia.
  #13 (permalink)  
Antiguo 20/06/2003, 09:33
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Cita:
Igualmente eso me daba otros problemas... y es que, como el swf es un juego, al iniciar a jugar es como que sigue de largo y comienza a reproducir toda la pelicula mia + el juego arriba....
fijate en tu codigo tienes un stop sin parentecis....
puede que por eso no se detenga.

Con respecto a tu segunda "citacion".. no no tiene nada de malo hacerlo asi ya que lo que haces es cambiar la pos dinamicamente y eso es ok... pero lo podrias hacer ahun mejor ... usando el getProperty(destino,propiedad). De esta manera puedes leer la pos de un mc que este en la escena y con respecto a este le das la pos a tu mc con setProperty(tumc,propiedad,valor).

Seria mas OOP por llamarlo asi..


Saludos
__________________
http://www.flotdesign.dk/
  #14 (permalink)  
Antiguo 20/06/2003, 09:51
Avatar de flavia  
Fecha de Ingreso: noviembre-2002
Mensajes: 269
Antigüedad: 15 años
Puntos: 0
Gracias Pulento!

y buen fin de semana!....

__________________
Flavia.
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 20:33.