BBjListBox

El objeto BBjListBox provee métodos para manipular un control GUI del tipo cuadro de lista.

REM “[PRG24] Ejemplo de BBjListBox

REM “Mundo BBx (http://sites.google.com/site/mundobbx)

REM

REM “Obtiene una instancia del objeto BBjAPI

REM “=======================================

LET miAPI!=BBjAPI()

REM

REM “Abre el dispositivo SYSGUI

REM “==========================

SYSGUI=UNT

OPEN (SYSGUI) "X0"

REM

REM “Obtiene la instancia del objeto BBjSysGui

REM “=========================================

LET sysgui!=miAPI!.getSysGui()

REM

REM “Valores para crear una ventana

REM “==============================

X=10

Y=10

ANCHO=200

ALTO=200

TITULO$="Ejemplo de uso BBjListBox"

REM

REM “Establece el contexto actual

REM “============================

sysgui!.setContext(0)

REM

REM “Crea la ventana

REM “===============

window! = sysgui!.addWindow(X,Y,ANCHO,ALTO,TITULO$)

REM

REM “Agrega un cuadro de lista en la ventana

REM “=======================================

lista1!=window!.addListBox(101,50,100,90,60,"",$0000$)

REM

REM “Agrega elementos al cuadro de lista

REM “===================================

FOR I=1 TO 5

ITEM$="Elemento " + STR(I)

lista1!.addItem(ITEM$)

NEXT I

REM

REM “Registra rutinas en CALLBACKs

REM “=============================

CALLBACK(ON_LIST_DOUBLE_CLICK,DOBLECLICK_LISTA,sysgui!.getContext(),lista1!.getID())

CALLBACK(ON_CLOSE,CIERRA_APLIC,sysgui!.getContext())

REM

REM “Procesa Eventos

REM “===============

PROCESS_EVENTS

REM

REM “Rutina Callback llamada cuando el usuario hace doble click en un ítem

REM “del cuadro de lista y muestra un mensaje con el ítem seleccionado

REM “=====================================================================

DOBLECLICK_LISTA:

MENSAJE$="El item elegido es:"+str(lista1!.getItemAt(lista1!.getSelectedIndex()))

LET X=MSGBOX(MENSAJE$)

RETURN

REM

REM “Rutina Callback llamada cuando el usuario cierra la ventana de la aplicación

REM “============================================================================

CIERRA_APLIC:

RELEASE

RETURN