miércoles, 9 de marzo de 2016

Ejecutar una applet de java en internet explorer

Para ejecutar nuestra applet en un navegador es necesario seguir una serie de pasos para que esta funcione sin errores.

Primero que todo debemos saber que navegadores permiten ejecutar el JVM
(java virtual machine) o máquina virtual java, este es un complemento para los navegadores que nos permite ejecutar contenido java dentro de este; sin embargo no todos los navegadores admiten este complemento, por ejemplo desde la versión 45 de google chrome no se admite el JVM, pero existen otros navegadores como mozilla Firefox e internet explorer que si admiten este complemento.

Debido a que los navegadores solo leen lenguaje de etiquetas HTML tenemos que “llamar” nuestra applet desde html utilizando la etiqueta <applet> y dentro de esta tenemos que especificar 3 componentes:



Codebase: allí se coloca el nombre de la carpeta donde esté alojada la clase de nuestra applet.

Code: allí ira el nombre de la clase

Width: allí le daremos el ancho de la ventana de la applet

Heigth: allí le daremos la altura a la ventana de nuestra applet


No es necesario crear el archivo HTML por nuestra cuenta si utilizamos el IDE NetBeans debido a que al importar la librería java.applet.*. Éste al compilar nuestra applet automáticamente nos genera el archivo .class y el archivo HTML.

Para compilar nuestra applet debemos dar clic derecho al archivo .java y escoger la opción  run  file:








Y se ejecutara nuestra applet.








Después de hacer esto vamos a la carpeta de nuestro proyecto y abrimos la carpeta build.






Allí encontraremos una carpeta llamada clases que contiene la clase compilada y un archivo HTML.






El archivo HTML que en la imagen se llama “Dibujo” le daremos clic derecho, abrir con y seleccionamos el navegador que en este caso será internet explorer



En las últimas versiones de internet explorer nos pedirá que demos permiso para ejecutar el complemento de java (JVM). Damos clic derecho al aviso resaltado en amarillo y seleccionamos permitir contenido bloqueado.






Y le damos si.




Si la versión del JVM es antigua nos ejecutara la applet. Pero si la versión es reciente, como en este caso nos saldrá este aviso:



Para solucionar esto abriremos el panel de control de java.







Allí iremos hasta la pestaña seguridad.




Y le damos al botón seleccionar lista de sitios.



Allí seleccionaremos agregar y escribimos file:/// y la dirección donde está guardado el archivo HTML (podemos copiar la dirección que aparece en el navegador).




Y la colocamos en la lista de excepciones.




Damos clic izquierdo por fuera y saldrá este aviso y le damos continuar y aceptar




Una vez hecho esto abrimos nuevamente el archivo HTML y  nos saldrá nuestra applet pero saldrá con la resolución que le da por defecto NetBeans.



Para solucionar esto abrimos el archivo HTML con el bloc de notas

Allí podemos cambiar el título, el pie de página, etc, y la resolución o el tamaño de la ventana, cambiando el componente width y height hasta obtener el tamaño que deseamos




Una vez que terminemos de modificar el archivo HTML lo guardamos y lo ejecutamos nuevamente.


Y listo ya ejecutamos nuestra applet desde el navegador.








Dibujos con awt 



Seleccionamos la categoría java, y después java class library. No usamos Java application porque una vez creado el proyecto nos va a generar una clase main, y como vamos a crear un applet no necesitamos de la presencia del “class.main”, de esta manera Java Class library nos genera nuestro proyecto sin el “class.main”. Luego presionamos “Next” y le damos el nombre al proyecto.


Una vez creado el proyecto, seleccionamos click derecho al mouse, luego new, en donde podemos observar que hay una lista desplegable, y por último se elige el que dice “Applet”. Si no aparece en la lista despegable colocamos “other” y lo podemos encontrar en la carpeta java, así como lo indica la siguiente imagen.



Contenido de la applet

Casa: 

Para crear el contenido de nuestra applet utilizamos la librería awt la cual nos provee de herramientas para realizar interfaces gráficas o dibujos. En este caso utilizamos el método paint para hacer 3 dibujos .

Para la creación de nuestra casa utilizamos:

g.setColor(Color.yellow);
g.fillRect(130, 200, 200);

En la cual g.setColor nos está indicando que color de relleno que tendrá nuestra fachada de la casa, g.fillRect dibujara nuestro rectángulo cuyo punto de origen es 130, 200 y que tiene una altura de 200 y una anchura 200 y pintando su interior del color seleccionado en este caso el amarillo.


En el caso de la puerta, ventanas y chimenea se utiliza en mismo método solo que cambiando las posiciones y colores de ellas con las siguientes líneas de código:

g.setColor(Color.orange);
g.fillRect(120, 60, 80, 30);
g.fillRect(130, 90, 60, 100);
g.setColor(Color.yellow);
g.fillRect(130, 200, 200, 200);
g.setColor(Color.cyan);
g.fillRect(260, 210, 60, 60);
g.fillRect(140, 210, 60, 60);
g.setColor(Color.orange);
g.fillRect(200, 300, 65, 100);


Para la creación del techo de nuestra casa utilizamos la siguiente línea de código: 

g.setColor(cafe);

int [] vx1 = {230, 380, 80};   En el cual en int es como se declara un array de dos enteros y también en el cual se le da las medidas de la linea izquierda del techo, la coordenada 230 es la medida inicio , 380 es el lado contrario y la coordenada 80 es lo largo de la linea diagonal.

int [] vy1 = {80, 200, 200};
g.fillPolygon (vx1, vy1, 3);

Estas líneas del código son las que dan la posibilidad de que el marco del dibujo se pueda ver:

g.setColor(Color.BLACK);

       g.drawRect(130, 200, 200, 200);//PARED

       g.drawRect(260, 210, 60, 60);//VENTANA DERECHA

       g.drawRect(140, 210, 60, 60); //VENTANA IZQUIERDA 

       g.drawRect(200, 300, 65, 100);//PUERTA