Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Los diversos eventos OnKey... (https://www.clubdelphi.com/foros/showthread.php?t=97778)

Angel.Matilla 21-10-2025 18:11:49

Los diversos eventos OnKey...
 
Estaba probando unas cosas en Builder y me ha llamado la atención que de los tres eventos OnKey que tiene cada formulario (Down, Press y Up), las teclas Insert, Inicio, Del, etc. sólo las detecta el OnKeyDown. Lo digo porque, teniendo KeyPreview = true, en los otros dos tengo puesto código y he probado poniendo un Breakpoint en ambos y tras pulsar cualquiera de esas teclas el programa no entra por esos dos eventos. ¿Es lógico?

Neftali [Germán.Estévez] 22-10-2025 09:05:36

Cita:

Empezado por Angel.Matilla (Mensaje 568822)
...me ha llamado la atención que de los tres eventos OnKey que tiene cada formulario (Down, Press y Up), las teclas Insert, Inicio, Del, etc. sólo las detecta el OnKeyDown.

Me ha llamado la atención por lo raro, porque hubiera dicho que el OnKeyUp también debería.
Efectivamente, con un prueba sencilla se confirma.
Por un lado, digamos que el OnKeyPress funciona diferente. Ya la propia ayuda dice que este evento no captura teclas "no imprimibles".
Y luego están el OnKeyDown y OnkeyUp que sí las capturan.

Con un pequeño ejemplo se confirma.



En este ejemplo he pulsado [SUPR], [INS] y la tecla [A] y los eventos son los que se ven.
El diferente es el OnKeyPress, que no captura (no le llegan) ni el [SUPR] ni el [INS].

Angel.Matilla 22-10-2025 09:51:16

¿Ves? Como en el OnKeyUp tengo otro código distinto juraría que en la prueba que hice no detectó nada pero me he dado cuenta que algo hice mal.


La franja horaria es GMT +2. Ahora son las 06:34:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi