-
- Movie in a Window
-
- Otra carateristica interesante de Director es el
trabajo con ventanas independientes y las posibilidades de compartir datos
entre ellas. Basicamente trabajar con MIAW (Movie in a Window), es crear una
ventana y asignarle a esta ventana una pelicula de Director. De este modo se
puede tener una pelicula principal y abrir en cualquier momento nuevas
ventanas que actuen como selectores o barras de herramientes, etc. Para esto
necesitamos una pelicula principal y una serie de pelicuals que conformar·n
cada una su ventana independiente en su momento. Estas peliculas secundarias
pueden estar importadas en la misma ventana cast, y por lo tanto acopladas al
proyector luego, o haber sido incluidas en el proceso de crear el proyector,
asi como simplemente pueden ser archivos externos en formato: DIR, DCR, DXR,
etc.. colocados en el mismo directorio del proyector.
-
- Para abrir una ventana el script b·sico de Lingo es:
-
- open window "miPeli.dir"
-
- Con este comando b·sico se nos abrir· una nueva
ventana flotante del tamaÒo de la pelicula que contiene y que funciona por si
misma. Para cerrar esta ventana desde Lingo el script ser·:
-
- forget window "miPeli.dir"
-
- Con esto tenemos el trabajo m·s b·sico que podemos
realizar con ventanas en Director, pero por supuesto hay muchisimo m·s.
-
- Podemos asignar un nombre de archivo diferente a la
ventana en cualquier momento con el script:
-
- set the filename of window "miPeli"
to "miPeli2.dir"
-
- Podemos situar exactamente la ventana en la pantalla
con el metodo rect(arribaX,
arribaY, abajoX, abajoY):
- set the rect of window "miPeli" to
rect(10,10,150,100)
-
- Asimismo podemos cambiar el tipo de ventana (su
estilo) utilizando el mÈtodo windowType:
-
- Por ejemplo:
- set the windowType of window
"miPeli" to 0 -- Ventana
normal.
- set the windowType of window
"miPeli" to 1 -- Ventana de
alerta.
- set the windowType of window
"miPeli" to 2 -- Rect·ngulo
simple.
- set the windowType of window
"miPeli" to 3 -- Rect·ngulo con
sombra.
- set the windowType of window
"miPeli" to 4 -- Ventana sin
botones maximizar o minimizar.
- set the windowType of window
"miPeli" to 8 -- Ventana normal
con scroll.
- set the windowType of window
"miPeli" to 12 -- Ventana normal
con scroll sin botones maximizar o minimizar.
- set the windowType of window
"miPeli" to 16 -- Ventana con
redondeada.
- set the windowType of window
"miPeli" to 49 -- Ventana de tipo
paleta flotante.
-
- Y tambiÈn por supuesto podemos cambiar su tÌtulo en cualquier momento:
- set the title of window "miPeli" to
"Hola soy una MIAW"
-
-
- Intercambiar datos entre
ventanas:
- Este es sin duda el elemento m·s interesante de la programaciÛn con
ventanas m™ltiples en Director.
- Para dirigir nuestros script de Lingo a una ventana en concreto utilizamos
en comando tell:
-
- tell window "miPeli"
- set the puppet of sprite 3 to
true
- set the locH of sprite 3 to x
- if (field "mio" = EMPTY) then
- alert "El campo est· vacÌo"
- end if
- end tell
Todo el script encerando entre "tell" y "end tell" se refiere a una ventana
en concreto y por consiguiente actua sobre su pelicula exclusivamente. De igual
modo podemos enviar variables globales a la pelicula en ventana desde la
pelicula principal:
- global miVar
- set miVar = field "info"
- tell window "miPeli"
- put miVar into field "info2"
- end tell
- end
-
- Tambien, como no, podemos volver a "hablar" con
la pelicula principal (el escenario), usando el script tell the stage to...
- tell the stage to set the puppet of
sprite 2 to false
Y esto, mas o menos es todo en cuanto a ventanas. En el
proximo capitulo veremos como utilizar men™s en nuestras aplicaciones de
Director
-