PDF de programación - Curso De Java - 9. AWT (Abstract Window Toolkit)

Imágen de pdf Curso De Java - 9. AWT (Abstract Window Toolkit)

Curso De Java - 9. AWT (Abstract Window Toolkit)gráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 5 de Febrero del 2018)
578 visualizaciones desde el 5 de Febrero del 2018
1,2 MB
51 paginas
Creado hace 12a (13/04/2012)
Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9. AWT (Abstract Window Toolkit)
Índice



















9.0 Introducción

9.1 Contenedores

9.2 Layouts

9.3 Componentes

9.4 Eventos

9.5 Swing

9.6 HowTo Swing

9.7 Ejemplo

9.8 Applets



David Contreras Bárcena

187

9. AWT (Abstract Window Toolkit)

AWT es el acrónimo del X Window Toolkit para Java.

Es una biblioteca de clases Java para el desarrollo de
Interfaces de Usuario Gráficas.

La versión del AWT que Sun proporcionó con el JDK se
desarrolló en sólo dos meses y es la parte más débil de todo
lo que representa Java como lenguaje.

Por este motivo se ha implementado el entorno gráfico
llamado Swing, desarrollado conjuntamente con Netscape.
Un entorno muy potente con todas las mejoras visuales que
hoy en día se ofrecen.

David Contreras Bárcena

188

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9. AWT (Abstract Window Toolkit)

Proporciona al programador todos los elementos necesarios
para desarrollar aplicaciones gráficas, como son ventanas,
botones, etc… y un sistema de eventos para gestionar las
acciones producidas por el usuario con cualquier elemento
de la aplicación.

David Contreras Bárcena

189

9. AWT – java.awt

Object



Component

Cursor

Event

FlowLayout



Button

Canvas

List

Container

Label

TextComponent

JComponent

Panel

Window

ScrollPane

TextField

TextArea

Dialog

Frame

JWindow

FileDialog

JDialog

JFrame

javax.swing

David Contreras Bárcena

190

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9. AWT – Estructura de una aplicación GUI

Objetos que debe contener toda aplicación GUI:

9.1 Contenedores (Containers): Elementos que se emplean para
colocar componentes en la ventana. La forma en la que se
distribuyan estos objetos en el container, dependerá del Layout
que se aplique al mismo. Un container que no posea un layout,
sólo podrá colocar un componente sobre sí mismo. Tipos de
container:

Ventanas: Elemento donde se muestra cualquier contenido visual.

Paneles: Una ventana podrá contener tantos paneles como le permita el
layout. Un panel, a su vez, deberá aplicar un layout para agregar
componentes.



David Contreras Bárcena

191

9. AWT – Estructura de una aplicación GUI

9.2 Layout Manager:

Indican la forma de organizar los componentes dentro del container.
Determinan el tamaño y posición de los componentes.

Pasos a dar:
1. Crear el container.

2. Aplicar el tipo de Layout Manager.

3. Agregar los componentes al container.

Tipos de Layout Manager más importantes (todos elllos heredan del
interface LayoutManager):


FlowLayout



BorderLayout

• GridLayout.





BoxLayout

CardLayout

David Contreras Bárcena

192

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9. AWT – Estructura de una aplicación GUI
9.3 Componentes (Components): Representan cada uno de los
controles que aparecen en toda ventana (botones, cajas de texto,
menús, ...)

David Contreras Bárcena

193

9.1 Contenedores - Ventanas

La clase Window permite crear ventanas cualquier tipo.
Subclases:

Frame: es la típica ventana de aplicación.
Dialog: es la ventana que utilizan los cuadros de diálogo.
Window: es una ventana sin marco ni barra de título. Utlizada para
las ventanas de presentación.

Métodos:

void setVisible (boolean visible)
void pack()
void setSize (int width, int height)
void setTitle (String title)
void setMenuBar (MenuBar mb)
void setResizable (boolean resizable)
void setState (int state)


David Contreras Bárcena

194

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.1 Contenedores – Cuadros de Diálogo

Son ventanas transitorias para mostrar advertencias, errores,
información especifica, etc.

No tienen barra de menús.

Pueden ser de dos tipos:

JDialog: proporciona un dialogo general.

JFileChooser: dialogo especifico para escoger archivos para
guardar o abrir.

JOptionPane: manera fácil y rápida de generar diálogo
personalizados.

David Contreras Bárcena

195

9.1 Contenedores - Container

Métodos importantes definidos en la clase Container:

Component add(Component comp)
void setLayout(LayoutManager mgr)
void remove(Component comp)
void remove(int index)
void removeAll()
void doLayout()





David Contreras Bárcena

196

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.2 LayoutManager

FlowLayout (java.awt)

Permite una distribución lineal de los componentes.

Crea nuevas líneas cuando así lo exige el ancho del container.

Components

Container

this.setLayout (new FlowLayout());
this.add(new Button(“Aceptar”));
this.add(...);
this.add(...);
this.add(...);
this.add(...);

David Contreras Bárcena

197

9.2 LayoutManager

GridLayout (java.awt)

Permite una distribución en regilla o tabla.

Los componentes se situan en las celdas de forma secuencial de
arriba abajo y de izquierda a derecha.

No se puede direccionar la posición de los componentes sobre las
celdas.

El tamaño de las celdas es idéntico.

Container

Components

this.setLayout(new GridLayout(2,3));
this.add(new Button(“Aceptar”));
this.add(...);
this.add(...);
this.add(...);

David Contreras Bárcena

198

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.2 LayoutManager
BorderLayout (java.awt)

Proporciona cinco áreas para situar componentes.

La ausencia de una de ellas produce la extensión horizontal o
vertical de las contiguas.

norte

Container

oeste

centro

este

Components

sur

this.setLayout(new BorderLayout());
this.add(new Button(“Aceptar”), BorderLayout.NORTH);
this.add(..., BorderLayout.EAST);
this.add(..., BorderLayout.WEST);
this.add(..., BorderLayout.SOUTH);
this.add(..., BorderLayout.CENTER);


David Contreras Bárcena

199

9.2 LayoutManager

CardLayout (java.awt)

Permite alternar el contenido de un container entre varios paneles
creados anteriormente.

El cambio se puede producir en tiempo de ejecución.

Cada panel deberá tener un identificador del tipo String.



this.setLayout(new CardLayout());

Panel panelA = new JPanel ();
panelA.add(....);
Panel panelB = new JPanel ();
panelB.add(....);

this.add(panelA, “A”);
this.add(panelB, “B”);

CardLayout cl = (CardLayout)this.getLayout();
cl.show(c, “B");

David Contreras Bárcena

200

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.2 LayoutManager
BoxLayout (javax.swing)

Permite visualizar los componentes alineados vertical u
horizontalmente.



Container

Components

this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
Button boton1 = new Button(“Aceptar");
boton1.setAlignmentX(Component.CENTER_ALIGNMENT);
this.add(boton1);
this.add(...);
this.add(...);
this.add(...);

David Contreras Bárcena

201

9.2 LayoutManager – Paneles

Los gestores de layout sólo permiten agregar un
componente en cada área o zona del mismo.

Si deseo agregar un conjunto de ellos (colocar más de un
botón en la zona sur de un BorderLayout) o agregar
componentes en bloques, se debe utilizar la clase JPanel.

Esta clase hereda de Container por lo que permitirá agregar
componentes como si se tratara de un JFrame.

David Contreras Bárcena

202

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.2 LayoutManager – Estructura de una aplicación GUI

Ejemplo de creación de una ventana:

public class MiFrame extends Frame

{

Button boton;



public static void main(String s[])

{



new MiFrame();

}



public MiFrame()

{

boton = new Button("Aceptar");

this.setLayout(new FlowLayout());

this.add(boton);

this.setSize(250,250);

this.setVisible(true);





}

}

David Contreras Bárcena

203

9.1 Contenedores – Estructura de una aplicación GUI

Ejemplos:



COMPONENTE -> Button

CONTAINER –> Frame

COMPONENTE -> Button

DISTRIBUCION –> FlowLayout

CONTAINER –> Frame

COMPONENTE -> Button

DISTRIBUCION –> FlowLayout

CONTAINER –> Panel en la zona Sur

DISTRIBUCION –> BorderLayout

CONTAINER –> Frame

David Contreras Bárcena

204

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.2 LayoutManager – Estructura de una aplicación GUI

Ejemplos:

public MiFrame()

{



boton = new Button("Aceptar");

this.add(boton);

this.setSize(250,250);

this.setVisible(true);



}

public MiFrame()

{

boton = new JButton("Aceptar");

this.setLayout(new FlowLayout());

this.add(boton);

this.setSize(250,250);

this.setVisible(true);

}

public MiFrame()

{

boton = new JButton("Aceptar");

Panel panel= new Panel(new FlowLayout());

panel.add(boton);

this.setLayout(new BorderLayout());

this.add(panel,BorderLayout.SOUTH);

this.setSize(250,250);

this.setVisible(true);

}



David Contreras Bárcena

205

9.3 Componentes (Component)

Como superclase de todos los componentes java (AWT y
Swing), esta clase generaliza el comportamiento de todos
ellos.
Todos los componentes AWT heredan de Component,
mientras que los desarrollados en Swing lo hacen de
JComponent.

Component

Button

List

Container

Label

JComponent

David Contreras Bárcena

206

David Contreras Bárcena - ETSI

Lenguaje de Programación JAVA –ITL/IINF/ITIG

Lenguaje JAVA



9.3 Componentes (Component)

Métodos importantes definidos en la clase Component:

void setEnabled(boolean b)

void setVisible(boolean b)

void requestFocus()

void setBounds(int x, int y, int width, int height)

void se
  • Links de descarga
http://lwp-l.com/pdf8618

Comentarios de: Curso De Java - 9. AWT (Abstract Window Toolkit) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad