Call permite invocar el frame preciso de un
movieclip o de una película. Normalmente se usa para ejecutar operaciones comunes
a más clip de la película. En efecto, no sería muy conveniente en términos de tiempo
asignarle a más botones por ejemplo, las mismas action. En este
caso, el papel de salvavidas lo desempeña call.
La sintaxis para call es:
Call ("nomeclip:labelclip")
donde nombreclip es el nombre de la instancia de la clip que se quiere
invocar y labelclip la label a la que referirse.
Un ejemplo puede serlo un teclado numérico de este tipo:
El display de este teclado está en un movieclip llamado pantalla
y cada vez que se presiona un botón numérico, se ejecuta esta
action:
On (Release)
Set Variable: "/pantalla:tecla" = "0"
Call ("/pantalla:AñadidaTecla")
End On |
Tecla es una variable que reside en el movieclip pantalla y
por por esto se invoca empleando antes el nombre del movieclip
"recipiente". Obviamente, su valor cambia según el botón
que se toque. En este caso, se muestra la action para el botón 0.
Call invoca el frame con label AñadeTecla del
movieclip pantalla:

Como se puede ver, he separado con dos niveles las operaciones y
el display del teclado. Esto permite que se trabaje mejor y que no se cree
confusión con eventuales cambios futuros.
En el frame AñadidaTecla está presente esta action:
| Set Variable: "display" = display & tecla |
De esta manera, se le une a display el nuevo valor que viene del Release
de la tecla seleccionada.
Si fuese sólo así, este ejemplo resultaría escaso y, además, no
habría permitido que se entendiesen mejor las posibilidades del call, por tanto, no
contentos con esto, añadamos una pequeña comprobación:-)
Queremos que este teclado digite exclusivamente 9 nueve cifras y no más.
Añadamos entonces un control en el frame AñadeTecla que
comprueba el display: si display es mayor de 9 cifras, entonces no incluir más cifras,
si no, añade:
ed ecco l'action:
If (Length ( display ) >= 9)
Set Variable: "display" = display
Else
Set Variable: "display" = display & tasto
End If |
Éste es el punto de partida para crear una calculadora en Flash.
Ahora se ve mejor cómo puede facilitar nuestro trabajo la action
call. En efecto, si no la hubiésemos usado, tendríamos que haber escrito las mismas
acciones para cada botón del teclado.