210 likes | 566 Views
AWT y Swing. Existen dos conjuntos basicos de componentes. Para crear aplicaciones graficas o GUI AWT abstract Window Toolkit Swing. AWT. Podemos realizar aplicaciones solas o applets Dependen del sistema nativo para manejar su funcionalidad. Se les conoce como componentes pesados.
E N D
AWT y Swing • Existen dos conjuntos basicos de componentes. • Para crear aplicaciones graficas o GUI • AWT abstract Window Toolkit • Swing
AWT • Podemos realizar aplicaciones solas o applets • Dependen del sistema nativo para manejar su funcionalidad. • Se les conoce como componentes pesados
Caracteristicas de AWT • Un gran conjunto de componentes de interfaz de usuario • Un robusto modelo de manejo de eventos • Herramientas graficas y de imagen, incluyendo forma, color y tipo de letra. Manejadores de Layout, para un manejo de ventanas flexible que no dependan de una tamaño o resolucion especifico. • Clases de transferencia de datos, para copiar y pegar a traves de el clipboard de la plataforma en donde ejecutamos nuestra aplicación.
Swing • Estan construidos sobre la tecnologia AWT • Proveen de apariencia de acuerdo al sistema donde se ejecuta la aplicacion • Esta completamente implementada en java • Estos componentes no dependen del sistema donde se ejecuta para manejar su fincionalidad • Se les conoce como componentes ligeros.
Caracteristicas de Swing • Tiene todas las caracteristicas de AWT • Versiones del conjunto de componentes 100% en java. • Una gran conjunto de componentes de alto nivel ( vista de arbol, caja de lista, etc) • Diseño de java puro. • Apariencia modificable.
Velocidad, el usar el sistema nativo como base hace que el desempeño de los componente sea mas rapido. Portabilidad de applets, casi todos los navegadores soportan las clases de AWT asi que applets contruidos con AWT puede ejecutarse sin necesidad del pluin de java. Apariencia: los componentes AWT se parecen mas al sistema en el que se estan ejecutando. Portabilidad. El uso del sistema en el que se ejecutan los componentes AWT crea algunas limitaciones. Algunos componentes pueden no funcionar en todas las plataformas. Los grandes creadores de componentes se han inclinado por el desarrollo de omponentes Swing y no AWT, esto hace que el conjunto de componentes AWT mas pequño. Caracteristicas. Los componentes AWT no soportan caracteristicas como iconos y tool-tips. Pros y contras de AWT PROS CONTRAS
Portabilidad. Debido a que los componentes de swing estan hechos solo con java, estos funcionan en casi todos las plataformas Comportamiento. Permiten un rango de comportamiento mas amplio ya que no estan limitados a los sistemas en los que se ejecutan. Caracteristicas. Soporta el uso de iconos y de tool-tips Soporte. Sun hace un gran esfuerzo para hacer Swing mas robusto Apariencia. Los componentes de swing automáticamente pueden tomar la apariencia de cualquier plataforma . Portabilidad de Applets. La mayoria de los navegadores no incluyen las clases de Swing ANSI que se debe de instalar un plugin de java; para que funcionen los applets con swing Desempeño. Los componentes Swing son generalmente mas lentos y con mas problemas que AWT. Swing pros y contras PROS CONTRAS
Layouts • Layouts es la forma en la que se distribuyen diferentes componentes graficos en un contenedor. • FlowLayout.- es el default para Panel y Applet, se agrega directamente con add(componente); los componentes se agregan de izquierda a derecha de arriba hacia abajo, uno despues de otro en el mismo orden en el que se agregaron. • BorderLayout.-se agrega un componentes con add(componente,BorderLAyout.CENTER), este segundo argumento puede ser NORTH,SOUTH,EAST,WEST Y CENTER, es el default para Frame y Dialog
CardLayout.- Se agrega la cnatidad de componentes que quiera con add(componente,String llave); el segundo argumento puede ser cualquier String. Solo es visible un componente a la vez. Para mostrar el componente es con show(componente, String.valueOf(llave)); • GridLayout.- acomoda los componentes en una matriz dentro del display • GridBagLayout. Es mas flexible a la hora d posicionar componentes.
Swing provee de mas Layouts • BoxLayout • OveryLayout • null, este no es realmente un esquema para colocar componentes pero si se desea tener control total de donde colocamos lo componentes podemos utilizar esta opcion.
Manejo de Eventos • Cualquier sistema operativo que soporta GUI debe monitorear constantemente el ambiente de que suceda algun evento, como un click del mouse o al presionar una tecla. • El OS. Reporta los eventos a el programa que esta corriendo
Manejo de eventos en AWT • Un objeto que escucha es una instancia de la clase que implementa una interface especial llamada listener interface • Una fuente que genera un evento es un objeto que puede registrar objetos que escuchan y enviar objetos de eventos • La fuente de los eventos envia objetos de eventos a todos los objetos que escuchan cuando ocurre un evento. • El objeto que escucha utilizara entonces la informacion en el objeto evento para reaccionar al evento.
import java.applet.*; import java.awt.*; import java.awt.event.*; public class Buttons extends Applet { Label label = new Label("Default Label"); Button button1 = new Button("One"); Button button2 = new Button("Two"); Button button3 = new Button("Three"); Panel panel1 = new Panel(); Panel panel2 = new Panel(); public void init() { setLayout(new BorderLayout()); panel1.add(label); button1.addActionListener(new ButtonHandler()); button2.addActionListener(new ButtonHandler()); button3.addActionListener(new ButtonHandler()); panel2.add(button1); panel2.add(button2); panel2.add(button3); add("North",panel1); add("Center",panel2); }//fin de init class ButtonHandler implements ActionListener { public void actionPerformed(ActionEvent e) { String s = e.getActionCommand(); label.setText(s); } } //fin de ButtonHandler }//fin de la clase Buttons Ejemplo de un boton en AWT
http://www.sunncity.com/Tutorial_Java/partTwo/gui.html#componenthttp://www.sunncity.com/Tutorial_Java/partTwo/gui.html#component