Tengo un problema con los gets que usan un botón para buscar.
El problema es que cuando vuelve de la búsqueda se queda en su casilla hasta que se de enter o flecha abajo. Bueno eso no es muy molesto, pero si el siguiente get tiene también un botón y lo pulsamos, (aqui viene la risa) el solito vuelve al get anterior. Veamos, que no baje al siguiente get y haya que darle enter vale, pero que en el segundo get se suba, eso me mosquea, ¿a alguien le ha pasado? . Abajo os dejo el código de lectura de los gets pos si alguno ve algo que no he visto.
Code: Select all
*-------------------------------------------------------------------------------
function CtrCliSer( nEvent, oDClSer, oDServi, oDClie )
*-------------------------------------------------------------------------------
local oDlg
Local oGet[4]
ASIZE(aDatSer,CLIS->(Fcount()))
AFILL(aDatSer,.t.)
CLIS->(IniCampo(aDatSer))
CLIS->(TabCampo(aDatSer,0))
if nEvent == ID_ALT
CLIS->(IniCampo(aDatSer))
EndIf
DEFINE DIALOG oDlg RESOURCE "DLGMCLSER" FONT oFont
REDEFINE GET oGet[1] VAR aDatSer[1] ID 201 PICTURE "99999" ;
BITMAP "BUSCAR1" ACTION (aDatSer[1]:= BusSCli(oDClie,oDlg),;
oGet[1]:Refresh() ) ;
Valid CliSerN(oDlg,nEvent);
OF oDlg UPDATE
REDEFINE GET oGet[2] VAR aDatSer[2] ID 202 PICTURE "9999" ;
BITMAP "BUSCAR1" ACTION (aDatSer[2]:= BusSer(oDServi,oDlg),;
oGet[2]:Refresh()) ;
Valid SerCliN(oDlg,nEvent);
OF oDlg UPDATE
REDEFINE GET oGet[3] VAR aDatSer[3] ID 203 PICTURE "@K!" OF oDlg UPDATE
REDEFINE GET oGet[4] VAR aDatSer[4] ID 204 PICTURE "99,999.99" OF oDlg UPDATE
REDEFINE BUTTON ID 101 OF oDlg ;
ACTION ALTASERVI(nEvent), oDlg:End()
REDEFINE BUTTON ID 102 OF oDlg ;
ACTION CLIS->(IniCampo(aDatSer)), oDlg:aControls[ 1 ]:SetFocus(), oDlg:UpDate()
REDEFINE BUTTON ID 103 OF oDlg CANCEL ACTION oDlg:End()
ACTIVATE DIALOG oDlg ON PAINT oDlg:aControls[ 1 ]:SetFocus() CENTERED
return( nil )
Espero vuestras noticias