BBjCEdit
El objeto BBjCEdit provee métodos para manipular un control GUI cuadro de edición personalizado (CEdit Custom Edit). El siguiente ejemplo con funcionalidad completa (cópialo y pégalo en un nuevo programa y ejecútalo) te permite observarlo en acción. He destacada en otro color la instrucción que contiene la creación del objeto.
REM “[PRG03] Ejemplo de BBjCEdit
REM "MundoBBx (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=400
ALTO=300
TITULO$="Ejemplo de uso BBjCEdit"
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 Custom Edit en la ventana
REM “===================================
miCEdit! = window!.addCEdit(101,50,100,90,30,"",$0008$)
REM
REM “Registra rutinas en CALLBACKs
REM “=============================
CALLBACK(ON_EDIT_MODIFY,CEDIT_MODIFICADO,sysgui!.getContext(),miCEdit!.getID())
CALLBACK(ON_CLOSE,CIERRA_APLIC,sysgui!.getContext())
REM
REM “Procesa Eventos
REM “===============
PROCESS_EVENTS
REM
REM “Rutina Callback llamada cuando el contenido de CEDIT se modifica
REM “================================================================
CEDIT_MODIFICADO:
REM “Muestra un mensaje con el contenido del control CEdit
MENSAJE$="El control CEdit contiene esto: " + STR(miCEdit!.getText())
LET X=MSGBOX(MENSAJE$,0+64+0,"Contenido")
RETURN
REM
REM “Rutina Callback llamada cuando el usuario cierra la ventana de la aplicación
REM “============================================================================
CIERRA_APLIC:
RELEASE
RETURN