componentes b sicos de gui parte i n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Componentes básicos de GUI Parte I PowerPoint Presentation
Download Presentation
Componentes básicos de GUI Parte I

Loading in 2 Seconds...

play fullscreen
1 / 29

Componentes básicos de GUI Parte I - PowerPoint PPT Presentation


  • 89 Views
  • Uploaded on

Componentes básicos de GUI Parte I. Proyecto de software. Introducción al AWT. AWT es el acrónimo del X Window Toolkit para Java, donde X puede ser cualquier cosa: Abstract, Alternative, Awkward o Another

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Componentes básicos de GUI Parte I' - yardley


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
introducci n al awt
Introducción al AWT
  • AWT es el acrónimo del X Window Toolkit para Java, donde X puede ser cualquier cosa: Abstract, Alternative, Awkward o Another
  • Se trata de una biblioteca de clases Java para el desarrollo de Interfaces de Usuario Gráficas.
  • La estructura básica del AWT se basa en Componentes y Contenedores.
  • La interface de usuario es la parte del programa que permite a éste interactuar con el usuario.
  • La interface de usuario es el aspecto más importante de cualquier aplicación.
  • El AWT también es independiente de la plataforma en que se ejecute.
estructura del awt
Estructura del AWT
  • Los Contenedores contienen Componentes, que son los controles básicos
  • No se usan posiciones fijas de los Componentes, sino que están situados a través de una disposición controlada (layouts)
  • El común denominador de más bajo nivel se acerca al teclado, ratón y manejo de eventos
  • Alto nivel de abstracción respecto al entorno de ventanas en que se ejecute la aplicación
  • Es bastante dependiente de la máquina en que se ejecuta la aplicación
componentes y contenedores
Componentes y Contenedores
  • Una interface gráfica está construida en base a elementos gráficos básicos, los Componentes.
  • Típicos ejemplos de estos Componentes son los botones, barras de desplazamiento, etiquetas, listas, cajas de selección o campos de texto.
  • 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.
  • En el AWT, todos los Contenedores son instancias de la clase Container o uno de sus subtipos.
ejemplo gui
Ejemplo GUI

En la figura se reproduce la ventana generada por el código de la aplicación ComponentesAWT.java que muestra todos los Componentes que proporciona el AWT. (Ver ejemplo: ComponentesAWT.java)

componentes
Componentes
  • Component es una clase abstracta que representa todo lo que tiene una posición, un tamaño, puede ser pintado en pantalla y puede recibir eventos.
  • Los Objetos derivados de la clase Component que se incluyen en el Abstract Window Toolkit (AWT) son los siguientes:
botones de pulsaci n button
Botones de Pulsación (Button)
  • Creación

Button boton;

boton = new Button( "Botón");

  • Captura de eventos

public boolean action( Event evt,Object obj )

{ if ( evt.target instanceof Button )

System.out.println( (String)obj );

else

System.out.println( "Evento No-Button" ); }

(Ver ejemplo: Botones.java)

botones de lista choice
Botones de Lista (Choice)
  • Los botones de selección en una lista (Choice) permiten el rápido acceso a una lista de elementos
botones de lista choice1
Botones de Lista (Choice)
  • Creación

Selector = new Choice();

  • Asignando valores

Selector.addItem( "Rojo" );

Selector.addItem( "Verde" );

Selector.addItem( "Azul" );

  • Captura de eventos

public boolean action( Event evt,Object obj )

{ if( evt.target instanceof Choice ) {

String color = (String)obj;

System.out.println( "El color elegido es el " + color ); }

return true; }

(Ver ejemplo: BotonSeleccion.java )

botones de marcado checkbox
Botones de Marcado (Checkbox)
  • Los botones de comprobación (Checkbox) se utilizan frecuentemente como botones de estado.
  • Proporcionan información del tipo Sí o No (true o false).
  • El estado del botón se devuelve en el argumento Object de los eventos Checkbox.
  • el argumento es de tipo booleano: verdadero (true) si la caja se ha seleccionado y falso (false) en otro caso.
botones de marcado checkbox1
Botones de Marcado (Checkbox)
  • Creación

Relleno = new Checkbox( "Relleno");

  • Captura de eventos

public boolean action( Event evt,Object obj )

{ if ( evt.target instanceof Checkbox )

System.out.println( "CheckBox: " + evt.arg.toString() );

return true; }

(Ver ejemplo: BotonComprobacion.java)

botones de selecci n checkboxgroup
Botones de Selección (CheckboxGroup)
  • Los botones de comprobación se pueden agrupar para formar una interfaz de botón de radio (CheckboxGroup), que son agrupaciones de botones Checkbox en las que siempre hay un único botón activo.
botones de selecci n checkboxgroup1
Botones de Selección (CheckboxGroup)
  • Creación

CheckboxGroup Radio;

Asignando valores

public void init() {

Radio = new CheckboxGroup();

add( new Checkbox( "Primero",Radio,true) );

add( new Checkbox( "Segundo",Radio,false) );

add( new Checkbox( "Tercero",Radio,false) );

}

(Ver ejemplo: BotonRadio.java)

etiquetas label
Etiquetas (Label)
  • Las etiquetas proporcionan una forma de colocar texto estático en un panel, para mostrar información que no varía.
etiquetas label1
Etiquetas (Label)
  • Creación

Label etiq1 = new Label( "Hola Java!" );

  • Alineacion de etiquetas

setLayout( new FlowLayout( FlowLayout.CENTER,10,10) );

(Ver ejemplo: Etiqueta.java)

listas list
Listas (List)
  • Las listas (List) facilitan a los operadores la manipulación de muchos elementos.
  • Se crean utilizando métodos similares a los de los botones Choice.
  • La lista es visible todo el tiempo.
  • Para acceder a los elementos seleccionados se utilizan los métodos getSelectedItem() o getSelectedItems().
  • Para listas de selección simple, cualquier selección con doble-click en la lista disparará el método action()
listas list1
Listas (List)
  • Creación

List planetas = new List( 4,false );

  • Asignando valores

planetas.addItem( "Mercurio" );

planetas.addItem( "Venus" );

planetas.addItem( "Tierra" );

planetas.addItem( "Marte" );

planetas.addItem( "Jupiter" );

planetas.addItem( "Saturno" );

planetas.addItem( "Neptuno" );

planetas.addItem( "Urano" );

planetas.addItem( "Pluton" );

(Ver ejemplo: Lista.java)

campos de texto textfield
Campos de Texto (TextField)
  • Los campos de texto (TextField) , son para la entrada directa de datos por teclado.
  • Los campos de texto se pueden crear vacíos, vacíos con una longitud determinada, rellenos con texto predefinido y rellenos con texto predefinido y una longitud predeterminada.
  • Cuando el usuario teclea un retorno de carro en un campo de texto, se genera un evento TextField.
campos de texto textfield1
Campos de Texto (TextField)
  • Creación

TextField tf1,tf2,tf3,tf4;

  • Asignando valores

// Campo de texto vacío

tf1 = new TextField();

// Campo de texto vacío con 20 columnas

tf2 = new TextField( 20 );

// Texto predefinido tf3 = new TextField( "Hola" );

// Texto predefinido en 30 columnas

tf4 = new TextField( "Hola",30 );

  • Captura de eventos

public boolean action( Event evt,Object obj )

{ if( evt.target instanceof TextField )

{ if( evt.target.equals( tf1 ) )

System.out.println( "Campo de Texto 1: " + evt.arg.toString() );

(Ver ejemplo: CampoTexto.java)

reas de texto textarea
Áreas de Texto (TextArea)
  • Las áreas de texto permiten incorporar texto multilínea dentro de zonas de texto (TextArea).
  • Los objetos TextArea se utilizan para elementos de texto que ocupan más de una línea, como puede ser la presentación tanto de texto editable como de sólo lectura.
  • Se puede permitir que el usuario edite el texto con el método setEditable() de la misma forma que se hace en el TextField.
  • Para acceder al texto actual de una zona de texto se utiliza el método getText().
reas de texto textarea1
Áreas de Texto (TextArea)
  • Creación

t1 = new TextArea();

t2 = new TextArea( "Tutorial de Java",5,40 );

t2.setEditable( false );

  • Captura de Eventos

Las áreas de texto no generan eventos por sí solas, por lo que hay que utilizar eventos externos, para saber cuando tenemos que acceder a la información contenida en el TextArea. (Por ejemplo un botón.)

canvas
Canvas
  • Los canvas son lienzos o zonas de dibujo.
  • Son un Componente básico que captura eventos de exposición (expose), de ratón y demás eventos relacionados.
  • Los canvas simplifican la producción de applets que necesitan una única funcionalidad para distintas áreas.
  • Por ejemplo, el applet Lienzo.java, contiene un manejador de eventos que controla el evento mouseDown en el canvas. Si el evento no se genera en el canvas, se le pasa al applet que lo tratará como un evento de ratón normal.
barras de desplazamiento scrollbar
Barras de Desplazamiento (Scrollbar)
  • Las barras de desplazamiento (Scrollbar) proporcionan una forma de trabajar con rangos de valores o de áreas como el Componente TextArea, que proporciona dos barras de desplazamiento automáticamente.
  • Si queremos implementar un selector de color, como en el applet Slider.java, podemos utilizar una barra de desplazamiento para cada uno de los colores primarios.
barras de desplazamiento scrollbar1
Barras de Desplazamiento (Scrollbar)
  • También podríamos utilizar una barra de desplazamiento para un rango de valores de color, tal como se muestra en el ejemplo Ranger.java.
  • las barras de desplazamiento no disponen de un display o zona donde se muestren directamente los valores asociados a los desplazamientos, para ello es necesario añadir explícitamente una caja de texto, tal como se muestra en el ejemplo RangoRojo.java.
contenedores container
Contenedores (Container)
  • Container es una clase abstracta derivada de Component, que representa a cualquier componente que pueda contener otros componentes. Se trata, en esencia, de añadir a la clase Component la funcionalidad de adición, sustracción, recuperación, control y organización de otros componentes.
  • El AWT proporciona cuatro clases de Contenedores:
    • Window
    • Frame
    • Dialog
    • Panel
  • La clase Applet también es un Contenedor, es un subtipo de la clase Panel y puede tener Componentes.
contenedores container1
Contenedores (Container)
  • Window

Es una superficie de pantalla de alto nivel (una ventana). Una instancia de la clase Window no puede estar enlazada o embebida en otro Contenedor. Una instancia de esta clase no tiene ni título ni borde.

  • Frame

Es una superficie de pantalla de alto nivel (una ventana) con borde y título. Una instancia de la clase Frame puede tener una barra de menú. Una instancia de esta clase es mucho más aparente y más semejante a lo que nosotros entendemos por ventana.

  • Dialog

Es una superficie de pantalla de alto nivel (una ventana) con borde y título. Una instancia de la clase Dialog no puede existir sin una instancia asociada de la clase Frame.

  • Panel

Es un Contenedor genérico de Componentes. Una instancia de la clase Panel, simplemente proporciona un Contenedor al que ir añadiendo Componentes.