UNIDAD 2: JAVA APLICACIONES GRAFICAS

JAVA TEMA 3: JAVA FRAME Y METODOS

En programacion visual java jsp y java servlets a los objetos se les asocia directamente los metodos, por ejemplo:

Ej a) private sub command1_click() codigo a realizar etc

Ej b) button1_click() codigo a realizar etc

A este modelo de objeto-evento se le conoce como modelo orientado a eventos (event driven).

Por supuesto que como buenos programadores como son todos los lectores de estas notas, uno siempre cuida todas las posibles situaciones que se le pueden presentar al usuario, por ejemplo, que tal si la maquina del usuario no tiene raton, la respuesta es sobrecargar el programa o aplicacion de eventos posibles y todos ellos llamando a la misma unidad de codigo es decir:

Ej:

Command1_click() codigo

Command1_keypressed() mismo codigo o llamado

Command1_UpArrow() lo mismo etc.

Command1_usuarioestornudo() igual etc

JAVA usa un modelo nuevo de asociacion de objeto-evento, llamado de “Delegacion de Eventos”, en este modelo se crea un objeto especializado en escuchar por eventos e informar a un objeto normal de cuando el evento sucede para que este ultimo active el metodo o codigo necesario para procesar el evento.

Objetos escuchadores de este tipo, pueden ser raton, teclado, etc, y existe un objeto de este tipo muy generico, capaz de escuchar hasta cuando el usuario estornuda llamado “ACTION”.

Cada uno de estos escuchadores, tienen tambien cada uno sus propios metodos, por ejemplo el objeto raton, tiene metodos para detectar el click del raton, o el dobleclick del raton etc, mas adelante se presenta una relacion de estos objetos y los metodos que contienen.

En un programa como en el siguiente ejemplo, uno crea el objeto escuchador y se lo agrega el objeto del programa que lo ocupa.

import java.lang.*; import java.awt.*; import java.awt.event.*;
public class prog2 {
//declaracion, creacion e inicializacion de componentes, objetos y variables
// en este caso un solo objeto la ventana
static Frame ventana= new Frame();
// parte principal de programa
public static void main(String[] args)
{ // area de definicion de propiedades de el objeto
ventana.setTitle("mi programa");
ventana.setBackground(java.awt.Color.pink);
ventana.setSize(200,150);
ventana.setCursor(new Cursor(Cursor.HAND_CURSOR) );
ventana.setVisible(true);
// area de asociacion de objetos-escuchadores
ventana.addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e){ System.exit(0); }} );
// otro escuchador con un evento asociado a FRAME
ventana.addKeyListener( new KeyAdapter()
{ public void keyPressed(KeyEvent e){
ventana.setBackground(java.awt.Color.blue);
}} );
// otro escuchador con un evento asociado a FRAME
ventana.addMouseListener( new MouseAdapter()
{ public void mouseExited(MouseEvent e){
ventana.setBackground(java.awt.Color.cyan);
ventana.setTitle("adios ratoncito");
}} );
}; // termina main
} // termina clase

Como se observa al objeto ventana le estamos agregando tres tipos de escuchadores diferentes (windows, raton, teclado) esto se hace con la instrucción(.ADDESCUCHADOR) y a cada escuchador se le esta cargando de codigo o instrucciones a alguno de sus metodos.

Para usar ADDESCUCHADOR, se debera crear el objeto-escuchador apropiado usando la instruccion NEW OBJETOLISTENER.

Pero observar que en su lugar se uso NEW OBJETOADAPTER, esto es porque si se crea OBJETOLISTENER java exige que se escriban o codifique todos los metodos del LISTENER ( y creanlo son muchos de cada uno)aunque no se ocupen.

OBJETOADAPTER es similar que OBJETOLISTENER excepto que en la aplicacion solo se escribe el metodo que realmente se ocupe, en jerga tecnica ADAPTER es LISTENER con metodo que se ocupe sobrecargado.

Los principales (no unicos) escuchadores y sus principales metodos son:

Escuchador Metodos

WINDOW WindowActivated(), WindowClosed(),

WindowClosing(), WindowDeactivated(),

WindowOpened().

MOUSE MouseClicked(), MouseDragged(),

MouseEntered(), MouseExited(),

MouseMoved(), MousePressed().

MouseReleased().

KEY KeyPressed(), KeyReleased(), KeyTyped().

POPUPMENU investigar en ayuda de java

FOCUS investigar en ayuda de java

CONTAINER investigaren ayuda de java

COMPONENT investigar en ayuda de java

CHANGE investigar en ayuda de java

CARET investigar en ayuda de java

Politica de Privacidad