Introducción
Ficha Técnica
Configuración
Estructura
Reordenamiento
Eventos
Espacio
Referencia
Atributos
Errores
Clases
Ejemplos
Download
Eventos

Los eventos en la biblioteca Hisiuin son procesados por la función widgetAction( Wevent e).

Esta función debe estar necesariamente definida en la clase que va a ser la interfaz gráfica (como se hace referencia en la sección Estructura).

Los tipos de eventos que se procesan son los siguientes:

Tipo Acción: Son los que se generan al hacer click a un objeto del tipo Wbutton, al presionar la tecla return en un objeto del tipo Wtextfield o al hacer click sobre un item de un objeto Wmenu.

Tipo Cambio de texto: Son los que se generan al cambiar el texto de manera directa (presionando teclas) o por medio de métodos, de un objeto del tipo Wtextfield o Wtextarea.

Tipo Cambio de item: Cuando se hace click a un item o se cambia el item seleccionado de un objeto del tipo Wlist, Wradiobutton, Wcheckbox, Wchoice o Wcheckbox

La función que procesa los eventos, recibe como parámetro un objeto del tipo Wevent. Este objeto tiene los siguientes atributos, que pueden tomar los siguiente valores:

Atributo

Tipo

Descripción

Valores Posibles

mType

CString

Clase que genera el evento

“Wbutton”

     

“Wlist”

     

“Wcheckbox”

     

“Wtextfield”

     

“Wtextarea”

     

“Wchoice”

     

“Wradiobutton”

     

“Wmenu”

mSource

CString

Nombre del Widget que genera el evento

Nombre de widget.

mWidget

Wwidget

Referencia a widget que genera el evento

del tipo Wwidget

mMenu

Wmenu

Referencia al menu que genera el evento

del tipo Wmenu

 

 

 

 

 

 

 

 

 

 

 

En caso que ningún objeto del tipo Wmenu o Wwidget haya generado un evento los valores para los atributos mWidget o mMenu, según sea el caso, tienen valor null.

Imaginemos que se tiene un botón que tiene nombre “uno” en la posición (1,1) de la interfaz. Un ejemplo del manejo de eventos para ese botón es el siguiente:
 

public void widgetAction( Wevent e){

    Si el objeto que generó el evento se llama “uno” y es del tipo “Wbutton”, entonces se procesa el evento. Cabe señalar que objetos que instancian a diferentes clases se pueden llamar igual en la interfaz. Por ejemplo podemos tener un objeto del tipo Wbutton que se llame “uno”, como también un objeto del tipo Wtextfield que tenga el mismo nombre.
    if ( (e.mSource.equals(“uno”) ) && ( e.mType.equals(“Wbutton”) ) ){

      Cambiamos el texto del Wbutton. que se encuentra en la posición (1,1).
      ((Wbutton)get(1,1)).setLabel(“Chao”);

      Esta instrucción tiene el mismo efecto si se referencia el objeto que generó el evento.
      ((Wbutton)e.mWidget).setLabel(“Chao”);

      }

    }