Acceso a flash

Hola. Quería saber si es posible hacer que una película flash insertada en una página dreamweaver empiece en un frame determinado, en función del botón de la página que cliques. Es decir. Tenemos una película flash. La insertamos en una página. Cuando presiono un link de una determinada página web, se abre la página donde esta insertada la película flash, y se abre en un determinado frame. Si clico otro link de la página inicial, se abre otra página diferente a la anterior, que tiene insertada la misma película flash, pero ahora se abre en otra frame, y así sucesivamente con varias página. No se si me explico. A ver si me puedes ayudar. Gracias

4 Respuestas

Respuesta
1
Lo que tienes que hacer es utilizar el siguiente ActionScript en el botón o botones que creaste:
on (press){getURL "nombrepagina.htm","nombredelframeacargar");}
en tu caso quedaría:
on (release){getURL("PAGE.htm","principal");}
Respuesta
1
Aqui te envio un tutorial de Cristalab sobre lo que tu quieres hacer, claro tus botones tienen que ser botones flash, si quieres ver los ejemplos visita:www.cristalab.com
___
A veces tenemos la necesidad de comunicar SWFs que no estén uno dentro de otro, es decir en lugares diferentes. En este tutorial veremos cómo hacerlo.
Usaremos LocalConnection, una clase de flash que sirve precisamente para esto, enviar información a otro SWF sin necesidad de usar los fscommand que tanto nos complican la vida.
Usaremos los siguientes métodos de la clase LocalConnection:
. Connect(nombreDeLaConexion:String):Bolean
Este método solo recibe el nombre de la conexión con que será conocida en el otro swf, devuelve true si la conexión tuvo éxito y false y ocurrió algún error.
. Close():void
Este método sirve para cuando ya no se use más la conexión hecha con Connect() .
.send(nombreDeLaConexion:String,metodoEjecutar:String,[argumentos:Object]):Boolean
Este es uno de los métodos más usados de esta clase, se utiliza después de haber hecho la conexión con conect() envía el nombre de la conexión, la función que se va a ejecutar y los argumentos de esta.
Bueno haremos una pequeña conexión que enviará una variable y la sumará en el otro swf.
Código del swf que enviará datos:
//creamos la conexión
var enviar_lc:LocalConnection = new LocalConnection();
//la variable
var dato:Number=1;
boton.onPress=function(){
//enviamos los parámetros correctos, ya mencionados arriba.
enviar_lc.send("nombreCX","metodo",dato);
}Código del swf que los recibe:
//creamos una caja de texto donde veremos los resultados de la conexión
this.createTextField("resultado_txt", 1, 10, 10, 100, 22);
result_txt.border = true;
//creamos la variable de conexión donde recibiremos los datos
var recibir_lc:LocalConnection = new LocalConnection();
//en el método "metodo" se ejecutara con los parámetros que se envían
//desde el otro swf
recibir_lc.metodo = function(argum1:Number) {
//convertimos el valor que hay en la caja de texto a tipo numérico
aux=int(resultado_txt.text);
//el valor que teniamos en la caja de texto le sumamos el argumento pasado
aux+=argum1;
//lo mostramos
resultado_txt.text = aux;
};
//hacemos la conexion.
recibir_lc. Connect("nombreCX");Nota: El SWF que envía datos debe de tener un botón con el nombre de instancia:¿? ¿Botón?
Verán que la variable que se envía de un swf se suma a la que esta en el otro swf.
Respuesta
1
Exacto, es lo que te había comentado de la incompatibilidad.
Lo siento no lo pude solucionar.
Gracias por tu ayuda. He probado lo que tu me dices y con Flashplayer7 funciona, pero con Flashplayer8 no. ¿Qué pasa?
Si, en el link pones por ejemplo: archivo.html#marca01
Y en el flash le asignas esa etiqueta a un key frame.
Respuesta
1
En realidad existen dos soluciones:
Hacer muchos swf y ponerlos en páginas diferentes.
La segunda es hacer que los link se también echos en flash de esta manera solo tienes una sola página donde esta el SWF en los links que deben ser flash de hacer el loadmovie e indicar cual swf quieres cargar y en que frame.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas