FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Controlar Keystrokes en un GET (Solucionado)
Posts: 883
Joined: Tue Oct 11, 2005 11:57 AM
Controlar Keystrokes en un GET (Solucionado)
Posted: Mon Jul 25, 2011 08:13 PM

Holas..

Estoy en modo edicion dentro de un get..

Necesito saber si alguien presiono algunas de las teclas de funcion y realizar una accion sin salir del get.
Tengo un Valid asociado al get que realiza operaciones de acuerdo al contenido del get, pero no como controlar las teclas de funcion.

Por lo pronto debo capturar F2.. F6.. puede que el ESC y otra combinacion rara que me pidan...

Saludos.

;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Controlar Keystrokes en un GET
Posted: Mon Jul 25, 2011 10:31 PM
Adolfo:

Tal vez las funciones GetKeyState() y GetAsyncKey() te sirvan, por ejemplo algo así:

Code (fw): Select all Collapse
IF GetAsyncKey(VK_UP) .OR.;
    GetAsyncKey(VK_SHIFT,VK_TAB)
    tu código......
ENDIF

IF GetKeyState(VK_UP) .OR.;
    GetKeyState(VK_SHIFT,VK_TAB)
    tu código .....
ENDIF


o la función SetKey(), aquí un ejemplo:

Code (fw): Select all Collapse
SETKEY(VK_F3,{|| aGets[04]:SetFocus()})
SETKEY(VK_F4,{|| OtroPrecio(oDlg)})


Ojalá te sirvan, saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 883
Joined: Tue Oct 11, 2005 11:57 AM
Re: Controlar Keystrokes en un GET
Posted: Tue Jul 26, 2011 01:27 AM

Armando Gracias...

Pero encontre la solucion con

Redefine Get oGetpro Var cEstado Id 101. .........
oGetPro:bKeyDown:={|nKey,nFlags| CheckGet(nKey,nFlags) }

.....

Function CheckGet(nKey,nFlags)
Do Case
Case nKey=113 // F2
........
EndCase
Return .T.

;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650

Continue the discussion