Tengo un dialogo al que le agregué 2 RBBTN, además el dialog tiene un Combobox y un GET (todo desde codigo).
Lo que me ocurre es que al pulsar Tab (o Intro), el foco solo cambia entre el Combo y el Get. O sea no pasa por los RBBTN.
Como hago para que de foco a los botones, según corresponda?
El código
- Code: Select all Expand view
- DEFINE FONT aO[_Fnt] NAME "MS San Serif" SIZE -0,18 BOLD
DEFINE ICON aO[_Ico] RESOURCE "ico_Conectar"
DEFINE DIALOG oDlg FROM 0,0 TO 165,405 PIXEL TITLE "Control de Acceso" ;
STYLE nOr( WS_POPUP, WS_VISIBLE, WS_BORDER, WS_THICKFRAME, 4 ) ;
ICON aO[_Ico]
@ 2,3 GBOX PROMPT " Acceso de Usuarios " SIZE 198,78 ALIGN DT_RIGHT OF oDlg ;
PIXEL COLORS CLR_WHITE, CLR_HBLUE, CLR_HBLUE ROUNDED
@ 14,7 GBOX SIZE 41,47 OF oDlg PIXEL COLORS CLR_GRAY, CLR_WHITE // Box del Logo
@ 15,7 BITMAP aO[_Bmp] RESOURCE "bmp_Acceso" NOBORDER SIZE 39,45 OF oDlg PIXEL
aO[_Bmp]:lTransparent:= .T.
@ 18, 52 SAY "Nombre/Alias:" SIZE 45, 10 PIXEL OF oDlg RIGHT
@ 17, 99 COMBOBOX aO[_Cmb] VAR cUser ITEMS ::aLstUser OF oDlg UPDATE ;
STYLE CBS_DROPDOWNLIST ;
SIZE 60,100 PIXEL ;
COLOR CLR_HBLUE, CLR_WHITE ;
ON CHANGE ( oSelf:nPosU := aO[_Cmb]:nAt, ;
oSelf:cHostName:= AllTrim( oSelf:aUsers[oSelf:nPosU,_Host] ), ;
oSelf:cDataBase:= Alltrim( oSelf:aUsers[oSelf:nPosU,_DB] ) , ;
oSelf:cUser := Alltrim( aO[_Cmb]:VarGet() ) , ;
oSelf:nPuerto := oSelf:aUsers[oSelf:nPosU,_Puerto] )
// Configurar
@ 12,176 RBBTN PROMPT "" SIZE 18,18 OF oDlg ;
BITMAP "bmp_Config" CENTER ;
TOOLTIP "Configurar Acceso" ;
GRADIANT { { 1/3, CLR_GRAD1, CLR_GRAD2 }, ;
{ 2/3, CLR_GRAD3, CLR_GRAD4 } } ;
ACTION ...
@ 46, 52 SAY "Clave de Acceso:" SIZE 45, 10 PIXEL OF oDlg RIGHT
@ 45, 99 BTNGET aO[_Get1] VAR cPassW SIZE 42,10 PIXEL PASSWORD OF oDlg
@ 41,145 RBBTN aO[_Btn1] PROMPT "&Conectar" SIZE 50,18 MOSTRIGHT OF oDlg ;
BITMAP "bmp_Conectar" ;
TOOLTIP "Conectar con Base de Datos" ;
GRADIANT { { 1/3, CLR_GRAD1, CLR_GRAD2 }, ;
{ 2/3, CLR_GRAD3, CLR_GRAD4 } } ;
ACTION ...
ACTIVATE DIALOG oDlg CENTER ON INIT ( aO[_Get1]:Setfocus(), FALSE )
muchas gracias