• Like
Clase 5 JAVA 2012
Upcoming SlideShare
Loading in...5
×
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,095
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
34
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Curso Básico de Java Facilitador: Prof. Bassam Asfur Republica Bolivariana de Venezuela Área de Computación
  • 2. EL AWT (ABSTRACT WINDOWS TOOLKIT) El AWT (Abstract Windows Toolkit) es la parte de Java que se ocupa de construir interfaces gráficas de usuario. Aunque el AWT ha estado presente en Java desde la versión 1.0, la versión 1.1 representó un cambio notable, sobre todo en lo que respecta al modelo de eventos. La versión 1.2 ha incorporado un modelo distinto de componentes llamado Swing, que también está disponible en la versión 1.1 como package adicional. La estructura básica del AWT se basa en Componentes y Contenedores . Estos últimos contienen Componentes posicionados a su respecto y son Componentes a su vez, de forma que los eventos pueden tratarse tanto en Contenedores como en Componentes.
  • 3. Creación de una Interface Gráfica de Usuario
    • Un “contenedor” o container, que es la ventana o parte de la ventana donde se situarán los componentes (botones, barras de desplazamiento, etc.) y donde se realizarán los dibujos.
    • Los componentes: menús, botones de comando, barras de desplazamiento, cajas y áreas de texto, botones de opción y selección, etc.
    • El modelo de eventos. El usuario controla la aplicación actuando sobre los componentes, de ordinario con el ratón o con el teclado. Cada vez que el usuario realiza una determinada acción, se produce el evento correspondiente, que el sistema operativo transmite al AWT.
  • 4. COMPONENTES Y CONTENEDORES Los Componentes permiten al usuario interactuar con la aplicación y proporcionar información desde el programa al usuario sobre el estado del programa. En el AWT, todos los Componentes de la interface de usuario son instancias de la clase Component o uno de sus subtipos. Los Componentes no se encuentran aislados, sino agrupados dentro de Contenedores . Los Contenedores contienen y organizan la situación de los Componentes; además, los Contenedores son en sí mismos Componentes y como tales pueden ser situados dentro de otros Contenedores.
  • 5. Jerarquía de Componentes
  • 6. import java.awt.*; public class EjemploAWT extends Frame{ static final int HOR_TAMANO = 300; static final int VER_TAMANO = 200; public EjemploAWT(){ super( "Aplicación Java con AWT" ); pack(); resize(HOR_TAMANO,VER_TAMANO ); this.setVisible(true); } public static void main( String args[] ) { new EjemploAWT(); } } Un Ejemplo
  • 7. Introducción a Swing Además del paquete java.awt, Java pone a disposición del programador el paquete javax.swing para crear unas interfaces gráficas.
  • 8. 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 . 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 toda 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"). Introducción a Swing
  • 9. Los layout managers o manejadores de composición, en traducción literal, ayudan a adaptar los diversos Componentes que se desean incorporar a un Panel , es decir, especifican la apariencia que tendrán los Componentes a la hora de colocarlos sobre un Contenedor, controlando tamaño y posición (layout) automáticamente. Manejadores de composición
  • 10. FlowLayout Es el más simple y el que se utiliza por defecto en todos los Paneles si no se fuerza el uso de alguno de los otros. Los Componentes añadidos a un Panel con FlowLayout se encadenan en forma de lista. La cadena es horizontal, de izquierda a derecha, y se puede seleccionar el espaciado entre cada Componente. Manejadores de composición BorderLayout La composición BorderLayout (de borde) proporciona un esquema más complejo de colocación de los Componentes en un panel. La composición utiliza cinco zonas para colocar los Componentes sobre ellas: Norte, Sur, Este, Oeste y Centro. Es el layout o composición que se utilizan por defecto Frame y Dialog .
  • 11. GridLayout La composición GridLayout proporciona gran flexibilidad para situar Componentes. El controlador de posicionamiento se crea con un determinado número de filas y columnas y los Componentes van dentro de las celdas de la tabla así definida. Layout Null Cuan no se quiere utilizar los manejadores por defecto que trae Java se inhabilita los Layout a través del Set Layout de la siguiente forma: setLayout(null); y posteriormente se usa el método setBounds Manejadores de composición
  • 12. import java.awt.*; import java.awt.event.*; public class Ejemplo extends Frame { public Ejemplo(){ initComponents(); } private void initComponents() { Button boton = new Button(); setLayout(null); boton.setLabel("Un Boton"); boton.setBounds(15, 80, 100,50); add(boton); this.setSize(500, 300); this.setVisible(true); } public static void main(String args[]){ Ejemplo demo=new Ejemplo(); } } Ejemplo del setBounds
  • 13. Modelo de eventos Los objetos sobre los que se producen los eventos (event sources) registran los objetos que habrán de gestionarlos (event listeners) Los event listeners habrán de disponer de los métodos adecuados, que serán llamados automáticamente cuando se produzca el evento Para que los event listeners dispongan de los métodos adecuados para gestionar los eventos, se les obliga a implementar una determinada interface Listener Interfaces Listener : se corresponden con los tipos de eventos que se pueden producir Gestión de Eventos
  • 14. Eventos de alto nivel ActionEvent: Pulzar sobre botones o elegir comandos en menús AdjustmentEvent: Cambiar valores en barras de desplazamiento ItemEvent: Elegir valores TextEvent: Cambiar el texto Alto Nivel Bajo Nivel Tipos de Eventos
  • 15. Eventos de bajo nivel ComponentEvent: Mover, cambiar tamaño, mostrar u ocultar un componente ContainerEvent: Añadir o eliminar un componente del container KeyEvent: Pulsar o soltar una tecla MouseEvent: Mover, arrastrar, pulsar y soltar con el ratón FocusEvent: Obtener o perder el focus WindowEvent: Acciones sobre una ventana Tipos de Eventos
  • 16. Gestión de Eventos Componente evento Significado Button ActionEvent Pulsar el botón CheckBox ItemEvent Seleccionar o deseleccionar un item Choice ItemEvent Seleccionar o deseleccionar un item Component ComponentEvent Mover, cambiar, mostrar u ocultar un componente FocusEvent Obtener o perder Focus KeyEvent Pulsar o soltar tecla MouseEvent Mover, arrastrar, pulsar el ratón Container ContainerEvent Añadir o eliminar un componente de un contenedor
  • 17. Gestión de Eventos Componente evento Significado List ActionEvent Hacer Doble Click sobre un ítem ItemEvent Seleccionar o deseleccionar un ítem MenuItem ActionEvent Seleccionar un ítem del menú Scrollbar AdjustmentEvent Cambiar el valor del Scrollbar TextComponent TextEvent Cambiar el texto Textfield ActionEvent Terminar de editar un texto pulsando Enter Window WindowEvent Abrir, cerrar, minimizar una ventana
  • 18. Interfaces Listener y eventos Evento Interface Listener Método Listener ActionEvent ActionListener actionPerformed() AdjustmentEvent AdjusmentListener adjustmentValueChanged() ComponentEvent ComponentListener componentHidden() componentMoved() componentResized() componentShown() ContainerEvent ContainerListener componentAdded() componentRemoved() FocusEvent FocusListener focusGained((), focusLost() ItemEvent ItemListener itemStateChanged
  • 19. Interfaces Listener y eventos Evento Interface Listener Método Listener KeyEvent KeyListener KeyPressed(), KeyReleased KeyTyped() MouseEvent MouseListener mouseClicked(), mouseEntered(), mouseExited(), mousePressed(), mouseReleased() MouseMotionListener mouseDragged(), mouseMoved() TextEvent TextListener textValueChanged() WindowEvent WindowListener windowActivated(), windowDeactivate(); windowClosed(); windowClosing(); windowIconified(); windowDeiconified(); windowOpened();