swing



Que es, como funciona y para que sirve

que es swing?


El paquete Swing es parte de la JFC (Java Foundation Classes) en la plataforma Java. 

La JFC provee facilidades para ayudar a la gente a construir GUIs. 

Swing abarca componentes como botones, tablas, marcos, etc...

Las componentes Swing se identifican porque pertenecen al paquete javax.swing.


...Continuamos


Swing existe desde la JDK 1.1 (como un agregado). Antes de la existencia de Swing, las interfaces gráficas con el usuario se realizaban a través de AWT (Abstract Window Toolkit), de quien Swing hereda todo el manejo de eventos. Usualmente, para todo componente AWT existe una componente Swing que la reemplaza, por ejemplo, la clase Button de AWT es reemplazada por la clase JButton de Swing (el nombre de todas las componentes Swing comienza con "J").


interfaz GRÁFICA



Para hacer más amigable la interacción con el usuario, actualmente la mayoría de los programas comerciales utilizan una interfaz de usuario gráfica (GUI).

El ejemplo más conocido es el sistema operativo Windows y sus aplicaciones. Sin embargo no fue el primero ni el único en usar una GUI.


paquetes a importar


Para facilitarnos la programación de las GUIS, Java nos provee de un conjunto de paquetes:

  • java.awt: Contiene todas las clases para crear interfaces de usuario y para dibujar gráficas e imágenes.
  • javax.swing: Provee un conjunto de componentes ligeros (escritos completamente en Java) que, en lo máximo posible, trabajan de la misma manera en todas las plataformas.
  • java.awt.event: Provee interfaces y clases para manejar los diferentes tipos de eventos disparados por los componentes AWT.

porque entonces aparece awt si se reemplazo con swing


Pues este paquete aparece en las interfaces de Swing ya que sin ellos no podríamos acceder a los  diferentes eventos que son lanzados por los componentes, pues estos utilizan a AWT para trabajar este tipo de cosas.

Además veremos que todos los componentes pertenecientes a java.swing traen adelante de ellos una J seguida del nombre del componente, pero en el caso de los manejadores de diseño no, pues estos pertenecen al paquete de AWT.


contenedores

Los diferentes componentes que forman la interfaz gráfica de una aplicación: Etiquetas,botones, cajas de texto, menús, etc. deben agruparse en otros componentes llamados contenedores. 

El paquete javax.swing tiene los siguientes contenedores para agrupar componentes.


contenedores


  • JFrame: Permite crear una ventana de una aplicación. Posee título y puede tener una barra de menús, barra de herramienta, barras de desplazamiento, supropio cursor, botones para maximizar, minimizar, etc.

  • JDialog: Permite crear cuadros de diálogo.

  • JPanel: Permite agrupar componentes. Podemos tener paneles dentro de paneles. Tienen un manejador de diseño.

Manejadores de Diseño

Un manejador de diseño es una clase que define la forma en que se acomodan los componentes insertados en un contenedor. El paquete javax.swing tiene los siguientes manejadores de diseño para acomodar componentes en un contenedor.


  • FlowLayout: Coloca los componentes de izquierda a derecha por filas, con las filas ordenadas de arriba abajo.

  • BorderLayout: El contenedor se divide en cinco regiones: North, East, West, South y Center.

manejadores de diseño


  • GridLayout: Acomoda a los componentes en filas y columnas con todas las regiones del mismo tamaño.

  • GridBagLayout: Acomoda a los componentes en filas y columnas que no necesariamente tienen la misma altura y ancho.

  • CardLayout: Cada uno de los componentes es tan grande como el contenedor. Sólo un componente es visible.

Componentes Activos


Los componentes activos del paquete Swing de Java permiten que el usuario interactúe con el programa:

  • JButton: Implementa un botón.

  • JCheckBox: Implementa una casilla de verificación.

  • JList: Una componente que permite que el usuario seleccione uno o más objetos de una lista.


Componentes de Texto


Hay cuatro componentes que pueden usarse para el despliegue y captura de textos:

  • JLabel: Despliega una línea de texto en la pantalla.

  • JTextField: Un cuadro que contiene una línea de texto. El usuario puede modificarla.

componentes de texto



  • JPassword: Un cuadro que permite la captura de una contraseña. No hace eco de los caracteres. En lugar despliega un carácter dado.

  • JTextArea: Un cuadro que contiene una o más líneas de texto. El usuario puede modificarlas.

MENÚS


El paquete java.swing de Java contiene una serie de clases que permiten crear diferentes menús:

  • JMenuBar: Permite crear una barra de menús. Contiene un conjunto de objetos de tipo JMenu y debe ser parte de una ventana, JFrame.

  • JMenu: Permite implementar menús. Contiene una colección de objetos JMenuItem y separadores.



MENÚS


  • JMenuItem: Permite implementar las opciones de un menú. Un JMenu también puede ser un JMenuItem permitiendo menús jerárquicos.
Made with Slides.com