Como poner el Focus a un GET

Post Reply
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Como poner el Focus a un GET

Post by acuellar »

Hola amigos

Como hago para poner el focus en un GET cuando elijo la opcion en un RADIO Ej:
FUNCTION RepLlama(mTot)
Local oFont, oBtn,oGet
private nOp:= 1, oBmp, oTmr, oTmr1, Inter:= nTot:= nSw:= nSw1:= 0,oDlg,fDes,fHas

fDes:=(FecPro-Day(FecPro))+1
fHas:=FecPro
DEFINE DIALOG oDlg RESOURCE "LLAMADAS" Title 'Llamadas Realizadas del:'
REDEFINE RADIO nOp ID 101,102,103,104,105 OF oDlg

REDEFINE GET Inter ID 106 OF oDlg UPDATE PICTURE '@z ####' WHEN nOp=5
REDEFINE DTPICKER fDes ID 107 OF oDlg UPDATE WHEN nOp=5
REDEFINE DTPICKER fHas ID 108 OF oDlg UPDATE WHEN nOp=5

REDEFINE METER oTmr VAR nSw ID 109 OF oDlg
REDEFINE BITMAP oBmp ID 112 OF oDlg RESOURCE "B-Imprime1" ADJUST

oTmr1:=TTimer():New( 700,{|| nSw1++ ,;
iif( nSw1 == 0, oBmp:SetBMP( "B-Imprime2" ), ), ;
iif( nSw1 == 1, ( oBmp:SetBMP( "B-Imprime1" ), nSw1:= -1 ), ) } )
oTmr1:Activate()

REDEFINE BUTTON oBtn ID 110 OF oDlg;
ACTION ( GeneraLST(nOp,mTot),oDlg:End() )

REDEFINE BUTTON oBtn ID 111 OF oDlg;
ACTION ( oDlg:End() )

ACTIVATE DIALOG oDlg CENTER
oTmr1:End()

Return Nil
En este caso cuando en nOp sea 5

Gracias por su ayuda

Saludos,
Adhemar
MGA
Posts: 1218
Joined: Mon Feb 25, 2008 2:54 pm
Location: Brasil/PR/Maringá
Contact:

Post by MGA »

FUNCTION RepLlama(mTot)
Local oFont, oBtn,oGet
private nOp:= 1, oBmp, oTmr, oTmr1, Inter:= nTot:= nSw:= nSw1:= 0,oDlg,fDes,fHas

fDes:=(FecPro-Day(FecPro))+1
fHas:=FecPro
DEFINE DIALOG oDlg RESOURCE "LLAMADAS" Title 'Llamadas Realizadas del:'
REDEFINE RADIO nOp ID 101,102,103,104,105 OF oDlg ;
on change(if(nop=5,inter:setfocus(),))
//supondo que inter seria o objeto do get


REDEFINE GET Inter ID 106 OF oDlg UPDATE PICTURE '@z ####' WHEN nOp=5
REDEFINE DTPICKER fDes ID 107 OF oDlg UPDATE WHEN nOp=5
REDEFINE DTPICKER fHas ID 108 OF oDlg UPDATE WHEN nOp=5

REDEFINE METER oTmr VAR nSw ID 109 OF oDlg
REDEFINE BITMAP oBmp ID 112 OF oDlg RESOURCE "B-Imprime1" ADJUST

oTmr1:=TTimer():New( 700,{|| nSw1++ ,;
iif( nSw1 == 0, oBmp:SetBMP( "B-Imprime2" ), ), ;
iif( nSw1 == 1, ( oBmp:SetBMP( "B-Imprime1" ), nSw1:= -1 ), ) } )
oTmr1:Activate()

REDEFINE BUTTON oBtn ID 110 OF oDlg;
ACTION ( GeneraLST(nOp,mTot),oDlg:End() )

REDEFINE BUTTON oBtn ID 111 OF oDlg;
ACTION ( oDlg:End() )

ACTIVATE DIALOG oDlg CENTER
oTmr1:End()

Return Nil
ubiratanmga@gmail.com

FWH17.04
FWPPC
Harbour/xHarbour
xMate
Pelles´C
TDolphin
User avatar
jrestojeda
Posts: 543
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Post by jrestojeda »

Hola amigo,
Prueba lo siguiente:

Code: Select all

REDEFINE RADIO nOp ID 101,102,103,104,105 OF oDlg ; 
   ON CHANGE(nOp,Inter)

Code: Select all

Function PongoFoco(nOp,Inter)
IF nOp=5
   Inter:SetFocus()
ENDIF
Return nil
Es lo mismo que postea SGS pero llamando una función que lo hace, es basicamente lo mismo. Cualquiera de las dos opciones debería funcionar sin problemas.

Saludos, desde Argentina, Esteban.
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Post by acuellar »

Gracias amigos

Probé de ambas formas y no funciona, se queda siempre en el RADIO 5
tengo que pulsar la tecla TAB para colocarlo en el GET.

necesito mas ayuda

Saludos

Adhemar
User avatar
jrestojeda
Posts: 543
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Post by jrestojeda »

Hola.
Prueba la función asi:

Code: Select all

Function PongoFoco(nOp,Inter) 
IF nOp=5 
   nOp:oJump:=Inter
   Inter:SetFocus()
ENDIF 
Return nil 
Espero te sirva.
Saludos.
User avatar
jrestojeda
Posts: 543
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Post by jrestojeda »

Ahh...

Es porque no estás usando una variable...

Prueba definir el Radio asi:

Code: Select all

REDEFINE RADIO nOp VAR vOp ID 101,102,103,104,105 OF oDlg ; 
   ON CHANGE(vOp,Inter)
Supongo que ahi tiene que andar sin problemas.
Saludos, Esteban.
Marcelo Via Giglio
Posts: 1033
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Re: Como poner el Focus a un GET

Post by Marcelo Via Giglio »

Hola,

en lugar de inter:setfocus(), prueba inter:PostMsg( WM_RBUTTONDOWN )

saludos

Marcelo
User avatar
ADBLANCO
Posts: 299
Joined: Mon Oct 22, 2007 3:03 pm
Location: Valencia - Venezuela

Post by ADBLANCO »

prueba con:

__Keyboard(CHR(VK_TAB))

0

oControl:oJump := oGet1

donde ocontrol es el objeto donde estas
Saludos

Angel, Valencia, Venezuela

xH .997 - FW 7.9 - BCC55 - WorkShop - MySql
Marcelo Via Giglio
Posts: 1033
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Re: Como poner el Focus a un GET

Post by Marcelo Via Giglio »

Hola,

prueba tambien inter:PostMsg( WM_SETFOCUS ) , creo que es mas adecuado

saludos
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Como poner el Focus a un GET

Post by acuellar »

Gracia a todos,
Son muy buenos.

Me funcionó con oGet:PostMsg(WM_RBUTTONDOWN), ya me estaba rindiendo.

Una nueva ayuda. Se puede hacer saltar en DTPICKER del DIA al MES y del MES al AÑO sin necesidad de pulsar el punto "." o la Slash "/" solo escribiendo 251108

Muchisimas gracias por su ayuda

Saludos

Adhemar
Post Reply