Combinar teclas dentro xbrowse (Solucionado)

Post Reply
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Combinar teclas dentro xbrowse (Solucionado)

Post by leandro »

Buenas tardes para todos,

como dice el encabezado, necesito lanzar una accion al hacer una combinación de teclas dentro de xbrowse, de momento tengo definida una funcion, pero no lo hace con las combinaciones.

Code: Select all


    oBrwFt := TXBrowse():New( oWChPq )
        ......
    oBrwFt:bKeyDown              := {|nKey,oGet,nCol|TeclasFtr(nKey,oGet,nCol)}
        .......

 
Que esta mal, o hace falta?

Code: Select all

Function TeclasFtr(nKey,oGet,nCol)
Do Case
    Case nKey=VK_RETURN
        manteFacturas()
    Case nKey=VK_DELETE .or. nKey=VK_F5
        borrarFactura()
    Case nKey=VK_F2
        manteFacturas(0)
    Case nKey=VK_F3
        EVAL(cbImpreFt)
    Case nKey=VK_F6
        EVAL(cbEnvio)   
    Case nKey=VK_F7
        EnviarEST(oRsFtr:Fields( "ll_consec" ):Value)
    Case GetKeyState( VK_CONTROL ) .AND. nKey = VK_F9 //intente asi pero no funciona 
        msginfo("lanzar funcion")
EndCase
 
Last edited by leandro on Sun Aug 30, 2020 1:00 pm, edited 1 time in total.
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
User avatar
Manuel Aranda
Posts: 561
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Re: Combinar teclas dentro xbrowse

Post by Manuel Aranda »

Hola Leandro,

A ver si esto te da una pista y puedes adaptarlo a tus necesidades

SetKey( VK_F12 , {|| if(GetKeyState( VK_SHIFT ), Calendario(), if(GetKeyState( VK_CONTROL ), EliminarDatos(), Calculador() ) ) } )
Un saludo,
Manuel

xH 1.2.3, FWH 14.09, BC++ 5.8.2, xVerce CW 1.0, PellesC
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: Combinar teclas dentro xbrowse

Post by leandro »

Gracias Manuel por responder :D

Fue muy valiosa tu ayuda, quedo resuelto de la siguiente manera:

Code: Select all

Function TeclasFtr(nKey,oGet,nCol)
Do Case
    Case nKey=VK_RETURN
        manteFacturas()
    Case nKey=VK_DELETE .or. nKey=VK_F5
        borrarFactura()
    Case nKey=VK_F2
        manteFacturas(0)
    Case nKey=VK_F3
        EVAL(cbImpreFt)
    Case nKey=VK_F6
        EVAL(cbEnvio)   
    Case nKey=VK_F7
        EnviarEST(oRsFtr:Fields( "ll_consec" ):Value)
    Case nKey = VK_F12
        eval ({|| if(GetKeyState( VK_SHIFT ), msginfo("shift+f12"), if(GetKeyState( VK_CONTROL ), msginfo("control+f12"), msginfo("f12") ) ) })
EndCase
 
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
Post Reply