Construcción de Applets
Los applets usan los mismos artefactos de AWT que hemos visto.
En particular un applet puede crear botones, ventanas independientes,
canvas para despliegue general, etc.
Lo que no puede hacer un applet es accesar archivos o abrir
conexiones con cualquier computador en la red. Sólo puede
abrir conexiones con el computador desde donde ser recuperó
el applet.
A futuro, los browsers Web incorporarán mecanismos para permitir
que un applet tenga distintos grados de privilegio para correr.
De este modo uno podría recuperar un applet que es un hoja
de cálculo la cuál podrá escribir en archivos locales. Este
es un nuevo enfoque para la distribución del software. Incluso,
no será difícil hacer applets que midan el tiempo de uso de
la aplicación para cobrar proporcionalmente.
Definición de un applet
Un applet se crea extendiendo la clase Applet, que a su vez es
una subclase de Panel. Un applet se distingue porque posee
los siguentes métodos:
- init(): Se invoca cuando se carga el applet y
se usa para inicializar el applet.
Aquí se crean todos los artefactos del applet.
- start(): Se invoca cada vez que el usuario
visita la página Web. El applet permanece cargado.
- stop(): Se invoca cuando el usuario
abandona la página Web. Si el usuario revisita la página y el
applet todavía esta cargado, entonces se invocará start (sin init).
- destroy(): Se invoca justo antes de que
el browser Web destruya el applet. Sirve para cerrar archivos,
cerrar conexiones y realizar otras labores. No es necesario
liberar objetos porque el recolector de basura sabe hacerlo.
- String getParameter(String nombre): se usa para
recuperar parámetros que se espeficican en la página Web en
donde se ubica el applet.
Es importante que el applet procese rápidamente los eventos originados
de la interacción con el usuario. En particular en ninguno de
estos métodos, ni en los métodos de AWT, se puede realizar cálculos
que tomen varios segundos, puesto que esto hará que no se muestren
las componentes en el momento adecuado.
Para realizar cálculos prolongados se deben crear threads.
Cómo incorporar un Applet en una página Web
Un applet se incorpora en una página Web usando los siguientes
comandos html:
<applet codebase=examples code=GuiApplet.class width=550 height=200>
... (parámetros)
</applet>
En donde:
- codebase: es el directorio que contiene la
clase del applet. En este caso el directorio es relativo al
directorio en donde se encuentra la página Web.
- code: es el nombre del archivo que
contiene el bytecode de la clase ya compilada.
- width y height: es el tamaño del rectángulo
que ocupará el applet en la página Web.
Entre los comandos applet y /applet se pueden colocar parámetros
para el applet con:
<param name=UNARGUMENTO value="valor">
Estos parámetros se reciben en el applet con:
String arg= miApplet.getParameter("UNARGUMENTO");