¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Java
  3. Aplicaciones gráficas
Extrait - Java Los fundamentos del lenguaje (con ejercicios corregidos)
Extractos del libro
Java Los fundamentos del lenguaje (con ejercicios corregidos) Volver a la página de compra del libro

Aplicaciones gráficas

Introducción

Hasta ahora, todos los ejemplos de código que hemos realizado funcionan exclusivamente en modo texto. La información se visualiza en una consola y también se informa desde dicha consola. La sencillez de este modo de funcionamiento supone una ventaja innegable para el aprendizaje de un lenguaje. Sin embargo, la mayoría de los usuarios de las futuras aplicaciones seguramente esperan disponer de una interfaz un poco menos austera que una pantalla en modo texto. En este capítulo vamos a estudiar cómo funcionan las interfaces gráficas con Java. Se dará cuenta enseguida de que el diseño de interfaces gráficas en Java no es tan sencillo y requiere escribir muchas líneas de código. En la práctica, contará con varias herramientas de desarrollo, capaces de encargarse de la generación de una gran parte de este código según el diseño gráfico de la aplicación que esté dibujando. Sin embargo, es importante entender correctamente los principios de funcionamiento de este código para intervenir en él y eventualmente optimizarlo. En este capítulo, no emplearemos ninguna herramienta específica.

1. Las bibliotecas gráficas

El lenguaje Java propone dos bibliotecas dedicadas al diseño de interfaces gráficas: la biblioteca AWT y la biblioteca SWING. Los fundamentos...

Diseño de una interfaz gráfica

Hemos visto un poco más arriba que cualquier aplicación gráfica se compone de, al menos, un contenedor de primer nivel. La biblioteca Swing dispone de tres clases que permiten llevar a cabo este papel:

JApplet: representa una ventana gráfica incluida en una página html para que un navegador se haga cargo de ella. Esta clase ya no es útil desde la plataforma Java 11 porque la tecnología de applets ha sido abandonada.

JWindow: representa la ventana gráfica más rudimentaria que pueda existir. No dispone de ninguna barra de título, ningún menú de sistema, ningún borde: en realidad es un mero rectángulo. Esta clase se utiliza rara vez, excepto para la visualización de una pantalla de inicio en el momento del arranque de una aplicación (splash screen).

JFrame: representa una ventana gráfica completa y plenamente funcional. Dispone de una barra de título, de un menú de sistema y de un borde. Puede fácilmente contener un menú y, por supuesto, es el elemento que vamos a emplear en la mayoría de los casos.

1. Las ventanas

La clase JFrame es un elemento indispensable en cualquier aplicación gráfica. Como en el caso de una clase normal, debemos crear una instancia, modificar eventualmente las propiedades y utilizar los métodos. A continuación se muestra el código de la primera aplicación gráfica.

package es.eni.editions.ihml; 
import javax.swing.JFrame; 
public class Main { 
    public static void main(String[] args) 
    { 
        JFrame ventana; 
        // creación de la instancia de la clase JFrame 
        ventana=new JFrame(); 
        // modificación de la posición y del 
        // tamaño de la ventana 
        ventana.setBounds(0,0,300,400); 
        // modificación del título de la ventana 
        ventana.setTitle("Primera ventana en Java"); 
        // visualización de la ventana 
        ventana.setVisible(true); 
    } 

y el resultado...

Conclusión

Este capítulo le permite comprender una cierta cantidad de conceptos y componentes relacionados con la creación de interfaces gráficas con la API Swing. Para ir más allá, comience consultando la documentación oficial disponible en la siguiente dirección: https://docs.oracle.com/javase/tutorial/uiswing/