BBjInputD

A partir de BBj 4.0 el objeto BBjInputD provee métodos para manipular un control GUI de tipo fecha. Este objeto además tiene un método especial que permite desplegar un calendario en pantalla para una selección más profesional de una fecha. El siguiente ejemplo muestra el uso de BBjInputD incluyendo la aplicación de la funcionalidad de calendario.

REM “[PRG17] Ejemplo de BBjInputD

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 BBjInputD"

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 “Crea un control InputD

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

fecha1! = window!.addInputD(101,50,100,90,30)

REM

REM “Crea un boton para mostrar un calendario

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

calendario! = window!.addToolButton(1,140,100,90,30,"calendario")

REM

REM “Asigna el enfoque al control InputD

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

fecha1!.focus()

REM

REM “Registra rutinas en CALLBACKs

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

CALLBACK(ON_TOOL_BUTTON_PUSH,calendario,sysgui!.getContext(),calendario!.getID())

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

REM

REM “Procesa Eventos

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

PROCESS_EVENTS

REM

REM “Muestra el calendario

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

calendario:

fecha1!.calendar()

return

REM

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

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

CIERRA_APLIC:

RELEASE

RETURN