ActionScript - pregunta tonta de actionscript

 
Vista:

pregunta tonta de actionscript

Publicado por Benito (1 intervención) el 12/12/2005 13:12:25
Buenas a todos,

Estoy buscando como hacer algo y seguro que la solución es sencilla pero mi conocimiento de flash es bastante limitado y quizá alguien pueda ayudarme.

El tema es que tengo una función en un símbolo y quiero llamarla desde otro símbolo.
Me explico.
Tengo una escena en la que hay una película y dentro hay una zona en la que hay un libro. Este libro está incluído en un símbolo llamado "Libro". El caso es que en este libro hay algo de código action script, y entre él está la opción de pasar de página con la función gotopage().
Total, que dentro del libro tengo otro símbolo para la página 5, y en esta página quiero colocar un índice, pero para pasar de página tengo que llamar a la función gotopage incluída en Libro. Si estuviese en la escena funcionaría haciendo.
_root.gotopage(3)
Pero como no está en la escena sino en el libro no sé que poner.
He probado
_root.Libro.gotopage(3)
pero como cabe esperar no funciona.
Alguien sabe como hacer llamadas a código incluído en un símbolo.

Muchas gracias a todos.
Salud.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Llamando a una función de un símbolo desde otro símbolo

Publicado por Alejandro (369 intervenciones) el 21/06/2023 23:11:09
Para llamar a una función que está dentro de un símbolo desde otro símbolo en ActionScript, puedes utilizar la referencia al símbolo y luego llamar a la función deseada. Aquí tienes una posible solución:

Supongamos que tienes la siguiente estructura:

- En la escena principal, tienes un símbolo llamado "Libro".
- Dentro del símbolo "Libro", tienes un símbolo para la página 5 llamado "Pagina5".
- Dentro de "Pagina5", tienes un botón en el que quieres llamar a la función "gotopage()" que está en el símbolo "Libro".

Puedes probar lo siguiente:

1. En el botón dentro de "Pagina5", agrega el siguiente código en su guión de acciones:

1
2
3
4
5
// Obtén una referencia al símbolo "Libro" utilizando "parent"
var libro:MovieClip = MovieClip(parent);
 
// Llama a la función "gotopage()" en el símbolo "Libro"
libro.gotopage(3);

En este código, utilizamos la propiedad "parent" para obtener una referencia al símbolo "Libro" desde dentro de "Pagina5". Luego, llamamos a la función "gotopage()" en el símbolo "Libro".

Recuerda ajustar el número de página (3 en este ejemplo) según tus necesidades.

Al utilizar "parent" en el código, nos aseguramos de que la referencia se establezca correctamente para acceder al símbolo padre. Sin embargo, ten en cuenta que esto solo funcionará si el símbolo "Libro" es el padre directo del símbolo "Pagina5". Si hay más niveles de jerarquía, puedes utilizar "parent.parent" para ir subiendo en la jerarquía hasta llegar al símbolo "Libro".

Espero que esta solución te ayude a llamar a la función desde el símbolo "Pagina5" al símbolo "Libro". ¡Buena suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar