Página 1 de 1
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Mié Jun 16, 2010 8:37 pm
por Duilio
Hola necesitaria hacer interceptar el pulsado de la combinacion de teclas ALT + OTRA TECLA , por ejemplo ALT + B. O sea q si el usuario presiona ALT +A por ejemplo , se desplegue un form.
Gracias desde ya
Saludos
Duilio
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Mié Jun 16, 2010 10:37 pm
por jrcpoli-quitar
Saludos:
Creo que la tecla ALT la captura Windows como combinación de tecla
rápida, por lo tanto te sugiero que uses CONTROL, para evitarte
problemas, puedes usar el evento OnKeyDown para capturar la tecla que
necesites.
Pero a lo mejor te resulta mas útil emplear este método en el formulario:
METHOD WMKeyDown( nKey, nFlags ) CLASS TForm
IF nKey == VK_F2 .AND. lGetKeyState( VK_CONTROL )
MsgInfo( "Ctrl+F2" )
RETURN 0
ENDIF
RETURN Super:WMKeyDown( nKey, nFlags )
Has mirado las teclas que necesitas en:
Las constantes de las teclas para windows están en
xailerincludewinuser.api,
y todas empiezan por VK.
José Ramón Castro.
El 16/06/2010 20:37, Duilio escribió:
> Hola necesitaria hacer interceptar el pulsado de la
> combinacion de teclas ALT + OTRA TECLA , por ejemplo ALT +
> B. O sea q si el usuario presiona ALT +A por ejemplo , se
> desplegue un form. Gracias desde ya
> Saludos Duilio
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Mié Jun 16, 2010 11:03 pm
por Duilio
Hola jose muchismas gracias por tu tiempo , mira t soy sincero con control ya me habia funcionado el tema es que mis clientes estan acostumbrados a que el sistema viejo q tiene la empresa q esta hecho en clipper con ALT + A dan un alta de x cosa con ALT + B dan una baja etc. etc y aunque ahora tienen otros medios para hacerlo en modo visual hay algunos q se quejan de q no tienen esa forma disponible por eso medio q necesitabamos si o si ALT. Igualmente un millon de gracias
Saludos
Duilio
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Jue Jun 17, 2010 11:52 am
por jrcpoli-quitar
Saludos:
Supongo que en el formulario existen unos botones que pulsandolos te
llevan a dar de Alta, Bajas, Editar, Cancelar, Salir, en modo visual
existe la combinación de la teclas rápidas que para que se activen solo
tienes que añadir el signo "&" antes de la letra que pulsando la
combinación ALT+Tecla realiza la operación como si hubieras pulsado el
botón.
Te adjunto ejemplo.
José Ramón Castro.
El 16/06/2010 23:03, Duilio escribió:
> Hola jose muchismas gracias por tu tiempo , mira t soy
> sincero con control ya me habia funcionado el tema es que
> mis clientes estan acostumbrados a que el sistema viejo q
> tiene la empresa q esta hecho en clipper con ALT + A dan un
> alta de x cosa con ALT + B dan una baja etc. etc y aunque
> ahora tienen otros medios para hacerlo en modo visual hay
> algunos q se quejan de q no tienen esa forma disponible por
> eso medio q necesitabamos si o si ALT. Igualmente un millon
> de gracias
> Saludos
> Duilio
--
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Jue Jun 17, 2010 10:23 pm
por Duilio
Hola Jose mil gracias desde ya , por tu tiempo y tu predispocicion para ayudarme, lamentablemente el diseño grafico q tiene la aplicacion no tiene los menues en el nivel q necesito usar el Alt o sea si tiene menues para entrar a el modulo configuracion q es donde estoy trabajando pero despues es solo un gran TFolder en donde en cada pestaña se configura un aspecto de la aplicacion por lo tanto no tiene menues desplegables. Igualmente reitero mis gracias. Ha lo que si no me llego ningun archivo adjunto.
Saludos
Duilio
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Vie Jun 18, 2010 10:05 am
por jfgimenez
Duilio,
lo que te ha comentado José Ramón de poner "&..." en el texto, vale támbién
para cualquier control, no sólo para un menú. Es decir, si pones p.ej. el
texto "&Pulsar aqui" en un botón, cuando el usuario pulsa Alt+P en ese
formulario se va a disparar el OnClick de ese botón.
Y si eso no te vale, puedes utilizar el evento OnSysKeyDown del formulario,
que es donde se reciben las pulsaciones de las teclas en combinación con
Alt.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Vie Jun 18, 2010 11:03 am
por jrcpoli-quitar
Saludos:
José F.Gimenez, el evento OnSysKeyDown no es visible entre los eventos
de un formulario y tampoco está definido en la ayuda, podías ponernos un
ejemplo de su uso y decirnos donde encontrar referencias al mismo.
José Ramón Castro.
El 18/06/2010 10:05, Jose F. Gimenez escribió:
> Duilio,
>
> lo que te ha comentado José Ramón de poner "&..." en el texto, vale
> támbién para cualquier control, no sólo para un menú. Es decir, si pones
> p.ej. el texto "&Pulsar aqui" en un botón, cuando el usuario pulsa Alt+P
> en ese formulario se va a disparar el OnClick de ese botón.
>
> Y si eso no te vale, puedes utilizar el evento OnSysKeyDown del
> formulario, que es donde se reciben las pulsaciones de las teclas en
> combinación con Alt.
>
>
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Vie Jun 18, 2010 12:02 pm
por jfgimenez
José Ramón,
> José F.Gimenez, el evento OnSysKeyDown no es visible entre los eventos de
> un formulario y tampoco está definido en la ayuda, podías ponernos un
> ejemplo de su uso y decirnos donde encontrar referencias al mismo.
Es cierto, no existe ese evento. Error mio. Pero sí se puede hacer creando
el método WMSysKeyDown() en el formulario. P.ej.:
METHOD WMSysKeyDown( nKey, nFlags ) CLASS TForm1
IF nKey == Asc( "A" )
IF lGetKeyState( VK_CONTROL )
// Ctrl + Alt + A
ELSEIF lGetKeyState( VK_SHIFT )
// Shift + Alt + A
ELSE
// Alt+A
ENDIF
ENDIF
RETURN Nil
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
Capturar pulsado de convinacion de teclas ALT + OTRA TECLA
Publicado: Vie Jun 18, 2010 12:57 pm
por jrcpoli-quitar
Gracias José F.Gimenez, creo que Duilio tiene sus respuesta y yo he
aprendido una cosa mas.
José Ramón Castro.
El 18/06/2010 12:02, Jose F. Gimenez escribió:
> José Ramón,
>
>> José F.Gimenez, el evento OnSysKeyDown no es visible entre los eventos
>> de un formulario y tampoco está definido en la ayuda, podías ponernos
>> un ejemplo de su uso y decirnos donde encontrar referencias al mismo.
>
> Es cierto, no existe ese evento. Error mio. Pero sí se puede hacer
> creando el método WMSysKeyDown() en el formulario. P.ej.:
>
> METHOD WMSysKeyDown( nKey, nFlags ) CLASS TForm1
>
> IF nKey == Asc( "A" )
> IF lGetKeyState( VK_CONTROL )
> // Ctrl + Alt + A
> ELSEIF lGetKeyState( VK_SHIFT )
> // Shift + Alt + A
> ELSE
> // Alt+A
> ENDIF
> ENDIF
>
> RETURN Nil
>
>