Portada
Banner
Portada Foros Manuales Enlaces Email
clear1x1.gif clear1x1.gif clear1x1.gif
clear1x1.gif
clear1x1.gif

Portada
Foros
Manuales
Enlaces
Distribuidores
Precios
Sugerencias

Contacto

 

clear1x1.gif clear1x1.gif
 GuiBuilder - Manual del Usuario (Parte 54/55)
Primero Previo Próximo Último

Algo sobre la función CTRL.

Sabemos que sirve para obtener la información de los controles y también posee la característica de que dentro de sus parámetros se puede mencionar un cuarto parámetro con el contexto del cual se desea extraer información, por ejemplo:

gb__win.frm_Pantalla

y en los demás parámetros utilizando siempre los nombres que ya sabe que provee el GuiBuilder:

NombCia$=CTRL(X0,Id_txtNombCia,Get_Text,gb__win.frm_Pantalla)

Otra forma de obtener o almacenar información en cada control

Es utilizando funciones que también provee GuiBuilder, mediante un método muy diferente:

frm_Screen$=fngb__get_screen$(gb__win_id$,frm_screen$)

Lo anterior nos devuelve todo lo almacenado en la pantalla, es como hacer una especie de CTRL a toda la pantalla, permitiéndosenos hacer referencia a cada control por su nombre, ejemplo:

Print frm_Screen.Id_Documento$
Print frm_Screen.Id_Codigo$

Bajo este esquema también se puede actualizar o almacenar datos en cada control en la pantalla anterior, así:

frm_Screen.Id_Documento$="123456"
frm_Screen.Id_Codigo$="000125"

Hechas las modificaciones, solo queda actualizar o refrescar la información en la pantalla con la siguiente función:

frm_Screen$=fngb__put_screen$(gb__win_id$,frm_Screen$)

Lo anterior también se puede hacer de forma individual con cada campo, mediante estas otras funciones que GuiBuilder también facilita:

fngb__get_field$()
fngb__put_field$()

Para más información puede consultar el manual de ayuda en línea de Visual Pro/5.

Interacción con objetos mediante función definida por el usuario

Esta otra técnica es la del uso de una función que se DEFine en cada programa, la cual también permite utilizar los nombres de los controles en lugar de los ID o números de identificación.

Igualmente se requiere del uso de variables y funciones internas propias del GuiBuilder mencionadas anteriormente:

GB__WIN.NombForma
FNGB__WIN_ID$
FNGB__TEMPLATE$

Su DEFinición sería así:

DEF FNCTRL_ID(Contexto,CTRL_NAME$)
     PRINT (X0)'CONTEXT'(Contexto);            EMPL$=FNGB__TEMPLATE$(FNGB__WIN_ID$(Contexto));             
     DIM X$:TEMPL$;
     I=NUM(FATTR(X$,CTRL_NAME$,"ID"));
     RETURN  I
FNEND

La función retorna el número de identificación de cualquier control, dándole como parámetros el Nombre de la Forma y el del Control que nos interesa. Adicionalmente, observe que mediante esta función usted se olvida de tener que estar posicionándose sobre el contexto que interesa, la función FNCTRL_ID  lo hace por usted.

Primero Previo Próximo Último

Portada -- Foros -- Manuales -- Enlaces-- Sugerencias
Para comentarios: webmaster@essnet.com

clear1x1.gif
clear1x1.gif
clear1x1.gif
Portada Email Foros