![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola,
No entiendo bien porqué precisas ambos eventos "OnKeyDown" y "OnKeyPress", pero, entiendo menos aún cómo es que tienes que comprobar "lo mismo" en los dos eventos. ¿No te bastaría con comprobar que se pulsaron las teclas CTRL + ENTER en el evento "OnKeyDown"? A más de que ya ves que en el evento "OnKeyPress" no parece usarse para esos menesteres: no cuenta, como dices, con el parámetro "Shift", por ejemplo. No sé. Tal vez no esté del todo despierto. Lo que puedo decirte es que no parece bien la sentencia: Creo que sería más apropiado utilizar algo así: Puesto que la variable "Shift" es un "Set" que puede contener varios valores... no sé hasta qué punto podría funcionarte la comprobación que haces arriba, en caso, por ejemplo, de que "Shift" contuviera otros valores, puesto que entonces no sería igual a "ssCtrl", solamente. Sin embargo lo que propongo por mi parte es la comprobación mediante la pregunta "¿Está "ssCtrl" dentro de "Shift"? creo que es más correcto. Además, que no me lo invento yo, creo que la ayuda de Delphi dice algo a este respecto. ![]() |
|
#2
|
||||
|
||||
|
Gracias Dec por tus recomendaciones ...
Por qué necesito controlarlo en ambos eventos ? Pues una verdadera tontería !! Resulta que cuando lo detecto en OnKeyDown, abro un nuevo form, y justo entonces (lo cual acepto que es una tontería ...) se produce un sonido que corresponde a no aceptar el Ctrl-Intro en el campo TEdit. Pero el usuario, cada vez que pita el ordenador se sobresaltará y dirá : "Que pasó ?" Y eso se provoca precisamente (lo he comprobado con el debugger) porque entra en OnKeyPress y al no contemplar esa combinación de teclas emite el "clonck!". Lo mismo me pasa en cualquier otro campo (lo cual si debe de ser así), pero precisamente en este TEdit no lo quiero así porque tengo que abrir el Form ! No me sirve de nada poner Key := 0; en OnKeyDown porque de cualquier manera de entra en OnKeyPress y es ahí donde quiero interceptar la combinación de teclas para que sea 'válida' y no me produzca el sonido de error ... ![]()
__________________
Piensa siempre en positivo ! |
|
#3
|
||||
|
||||
|
Hola,
Cita:
|
|
#4
|
||||
|
||||
|
David, gracias
No es del ENTER porque siempre lo utilizo para pasar de un campo al otro. Mi código del evento OnKeyPress es
__________________
Piensa siempre en positivo ! |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|