AWT
Abstract Window Toolkit (AWT)(Kit de Herramientas de Ventana Abstracta en español)
es una paquete que contiene clases e interfaces, y funciona como un kit de herramientas de gráficos, interfaz de usuario,
y sistema de ventanas independiente de la plataforma original de Java.
SWING
SWING es otro paquete con clases e interfaces que viene a resolver algunos inconvenientes
que presenta AWT mejorando y agregando clases e interfaces, Swing está desarrollado sobre las partes de AWT
Según Wikipedia
- La arquitectura Swing Es un framework MVC para desarrollar interfaces gráficas para Java con
independencia de la plataforma. Sigue un simple modelo de programación por hilos, y posee las siguientes
características principales:
- Independencia de plataforma.
- Extensibilidad: es una arquitectura altamente particionada: los usuarios pueden proveer sus propias implementaciones modificadas para sobrescribir las implementaciones por defecto. Se puede extender clases existentes proveyendo alternativas de implementación para elementos esenciales..
- Personalizable: dado el modelo de representación programático del framework de swing, el control permite representar diferentes estilos de apariencia "look and feel" (desde apariencia MacOS hasta apariencia Windows XP pasando por apariencia GTK+, IBM UNIX o HP UX entre otros). Además, los usuarios pueden proveer su propia implementación de apariencia, que permitirá cambios uniformes en la apariencia existente en las aplicaciones Swing sin efectuar ningún cambio al código de aplicación.
- Ventajas
- El diseño en Java puro posee menos limitaciones de plataforma.
- El desarrollo de componentes Swing es más activo.
- Los componentes de Swing soportan más características.
Primera Ventana con AWT
NOTA: Con la creación de esta ventana básica solo lograremos que esta se muestre,
NO responderá a los eventos del usuario cuando desee cerrarla, es decir no se cierra la ventana al pulsar sobre la "X" de
la esquina superior derecha, yo tengo abierto el administrador de tareas para finalizar el proseco. Para que la ventana responda
a la petición de cierre será necesario agregar un "escucha de evento".
Para poder crear una ventana básica con awt podemos hacerlo de 2 maneras:
Heredando:
- Crear nuestra clase y hacerla sub-clase de Frame con extends
- public class Ventana extends Frame
- Crear un constructor con al menos una instrucción la de visibilidad:
- setVisible(true);
- Opcionalmente le agregamos algunos métodos para configurar la ventana:
- Editamos el titulo con el String
- super("Primera Ventana");
- Configuramos el tamaño de 300px por 100px
- setSize(300,100);
- Editamos el titulo con el String
- Llamamos a nuestro constructor desde el main:
- new Ventana();
- import java.awt.*;
- public Ventana(){
- super("Primera Ventana");
- setSize(300,100);
- setVisible(true);
- }
- new Ventana();
- }
- }
Instanciando Frame
- Desde el main crear un objeto Frame
- Frame marco = new Frame( "Primera Ventana" );
- El objeto llamará a sus métodos para configurar la visibilidad, también el tamaño:
- marco.setSize(new Dimension(300,100));
- marco.setVisible(true);
- import java.awt.Frame;
- import java.awt.Dimension;
- public class Ventana {
- marco.setVisible(true);
- }
- }
En ambos casos el resultado será:
Primera Ventana con SWING
Como deciamos antes SWING viene a resolver los problemas que traia AWT, de momento
podremos lograr que los botones del marco(minimizar, maximizar, cerrar) funcionen por si solo a través de un métodos
específico. Los pasos a seguir y formas de hacerlo los mismos:
Heredando:
- Crear nuestra clase y hacerla sub-clase de Jframe con extends
- public class PrimeraVentana extends JFrame
- Crear un constructor con al menos una instrucción la de visibilidad y forma de cierre:
- setVisible(true);
- setDefaulCloseOperacion(JFrame.EXIT_ON_CLOSE);
- Opcionalmente le agregamos algunos métodos para configurar la ventana:
- Editamos el titulo con el String
- super("Mi Primera Ventana");
- Configuramos el tamaño de 300px por 100px
- setSize(300,100);
- Editamos el titulo con el String
- Llamamos a nuestro constructor desde el main:
- new Ventana();
- import javax.swing.JFrame;
- public PrimeraVentana(){
- super("Mi Primera Ventana");
- setSize(300,100);
- setVisible(true);
- }
- new PrimeraVentana();
- }
- }
Instanciando JFrame
- Desde el main crear un objeto JFrame
- JFrame marco = new JFrame( " Mi Primera Ventana" );
- El objeto llamará a sus métodos para configurar la visibilidad, forma de cierre y también el tamaño:
- marco.setSize(new Dimension(300,100));
- marco.setDefaulCloseOperation(JFrame.EXIT_ON_CLOSE);
- marco.setVisible(true);
- import javax.swing.JFrame;
- public class Instanciando {
- marco.setSize(300, 100);
- marco.setVisible(true);
- }
- }
Como resultado seguiremos teniendo la misma ventanita.
No hay comentarios:
Publicar un comentario