TECLA <ENTER> en TEdit
Alguien sabe porque razón el evento KeyPress de un TEdit no reconoce la tecla <ENTER>
Abajo coloco el fragmento donde tomo la tecla <enter> procedure TFVenta.EditClienteKeyPress(Sender: TObject; var Key: Char); var if (key=#13) then .... .. |
Pues probado y funcionando en D6 :confused:
|
Por qué, no lo sé, pero sí sé que puedes usar OnKeyDown para detectar la tecla.
// Saludos |
Me parece que el problema viene por otro lado, ya que tampoco me reconoce esta tecla con los eventos KeyDown y KeyUp
|
Solo que en el Caso de OnKeyDown y OnKeyUp no has de compararlo con el valor #13, sino con la constante vk_Enter.
Hasta luego. |
Que tipo de dato es la constante vk_Enter, ya que en estos eventos la variable Key es de tipo Word
|
ups... no es vk_enter, es vk_return. He visto la windows.pas y no tiene un tipo definido... supongo que el compilador usará un tipo byte o single para representarla, dado su valor... aunque quizas la directiva {$externalsym} afecte el comportamiento normal y la declare como word... que es como me imagino que está en las cabeceras del API.
Habrá que ver... |
Estuve investigando sobre el tema y de esta forma es solucionable, pero no dentro del evento OnKeyPress:
procedure TFCTarjetas.FormCreate(Sender: TObject); begin Application.OnMessage := AppMessage; end; Procedure TFCTarjetas.AppMessage(var Msg: TMSg; Var Handled:Boolean); var actual : TWincontrol; begin if Msg.message = WM_RETURN then begin Actual := Screen.ActiveControl; if Actual is TCustomEdit then ..... El problema es que aqui no puedo controlar un TEdit en particular. un saludo y Gracias |
La franja horaria es GMT +2. Ahora son las 06:00:38. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi