Asignar funcion a teclas F1,F2,F3, etc.

101 views
Skip to first unread message

Enrique

unread,
Aug 26, 2014, 8:35:07 PM8/26/14
to publice...@googlegroups.com

Hola Amigos: Tengo un formulario principal y desde ahí necesito que cuando se presione la tecla F1,F2,F3..... O  F12 del teclado llame a otro formulario.


Muchas Gracias.

Enrique
Santiago de Chile

mapner

unread,
Aug 26, 2014, 8:54:54 PM8/26/14
to publice...@googlegroups.com

Hector Colman

unread,
Aug 26, 2014, 9:30:37 PM8/26/14
to publice...@googlegroups.com
en el proced de Form

Lparameters nKeyCode, nShiftAltCtrl

If nKeyCode = -4 And Thisform.Panel.ActivePage =1
Thisform.Panel.facturacion.command9.Click
Endif

* (F6)Impresion de Presupuesto
If nKeyCode = -5 And Thisform.Panel.ActivePage =1
*thisform.panel.facturacion.command14.Click
Thisform.Panel.facturacion.imprimir.command4.Click
Endif

*F7 para imprimir
If nKeyCode = -6 And Thisform.Panel.ActivePage =1
Thisform.Panel.facturacion.command12.Click
*impresion
Endif


If nKeyCode = -7 And Thisform.Panel.ActivePage =1

Thisform.Panel.facturacion.command2.Click

Endif

*F9 Liquidacion directa
If nKeyCode = -8 And Thisform.Panel.ActivePage =1
Thisform.Panel.facturacion.liQUIDAR.Visible = .T.
Thisform.Panel.facturacion.liQUIDAR.optiongroup3.Value = Thisform.Panel.facturacion.tipoventa.Value
Thisform.Panel.facturacion.liQUIDAR.tclidescrip.Value   = Thisform.Panel.facturacion.tclidescrip.Value
Thisform.Panel.facturacion.liQUIDAR.text3.Value = Thisform.Panel.facturacion.text6.Value
Thisform.Panel.facturacion.liQUIDAR.text5.Value = Thisform.Panel.facturacion.text2.Value
Thisform.Panel.facturacion.liQUIDAR.text1.Value = Thisform.Panel.facturacion.Total.ttotal.Value
Thisform.Panel.facturacion.liQUIDAR.command2.Click
Endif



If nKeyCode = -2 && F3 BUSCAR CLIENTE
Do Form CLIENTE
Thisform.Panel.facturacion.TCLicodigo.SetFocus
Endif

If nKeyCode = -3 && F4 BUSCAR ARTICULO
Do Form articulos_buscar.scx
Thisform.Panel.facturacion.TARtcodigo.SetFocus
Endif

If nShiftAltCtrl=1
*Thisform.Panel.facturacion.imprimir.COmmand1.Click
Endif

If nShiftAltCtrl=2
* Thisform.Panel.facturacion.imprimir.command2.Click
Endif

*MESSAGEBOX(STR(nShiftAltCtrl))
*MESSAGEBOX(STR(nKeyCode))

Enrique

unread,
Aug 27, 2014, 11:27:58 AM8/27/14
to publice...@googlegroups.com
Hola Hector: Muchas gracias por tu respuesta. Puse lo que indicabas en evento KeyPress del formulario y no hay acción con ninguna tecla del   F2,F3,F4,F5...etc.



IF nKeyCode = -2    && F3 Buscar cliente
 Do Form buscar.scx
Endif

IF nKeyCode = -3    && F4 Pago de tiquet
Do Form pago1.scx
Endif

Saludos.

Guillermo MDQ

unread,
Aug 27, 2014, 11:39:45 AM8/27/14
to publice...@googlegroups.com
Enrique, verifica que la propiedad KeyPreview del Form tenga el valor .T.


Saludos
Guillermo

Hector Colman

unread,
Aug 27, 2014, 11:44:17 AM8/27/14
to publice...@googlegroups.com
Propiedad del formulario
thisform.KeyPreview = .T. 


Enrique

unread,
Aug 27, 2014, 1:28:26 PM8/27/14
to publice...@googlegroups.com
Guillermo, Muchas gracias. Funciono.

Saludos.

Enrique

Enrique

unread,
Aug 27, 2014, 1:30:23 PM8/27/14
to publice...@googlegroups.com
Hector; Muchas gracias. Funciono con esa indicación.

Saludos.

Enrique

Enrique

unread,
Aug 27, 2014, 1:31:38 PM8/27/14
to publice...@googlegroups.com
Hector; Muchas gracias por tu ayuda. Funciono correctamente con esa ultima indicación.

Saludos

Enrique



El miércoles, 27 de agosto de 2014 11:44:17 UTC-4, Hector Colman escribió:
Reply all
Reply to author
Forward
0 new messages