Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Onkeypress primero escriba y luego ejecute el codigo (https://www.clubdelphi.com/foros/showthread.php?t=59454)

principiante22 27-08-2008 17:32:53

Onkeypress primero escriba y luego ejecute el codigo
 
Saludos a todos, aqui vengo con otra de las mias :D.

Si mal no tengo entendido, el evento onkeypress ejecuta el codigo escrito en el antes de si quiera escribir la letra (o lo que sea que se presiono), pues entonces mi duda es, como puedo hacer que la letra se escriba antes de que se ejecute el codigo?.

Trate con algo como esto:

Código Delphi [-]
Edit1.text:=Edit1.text+key;
i:=edit1.text;

Lo puse antes del codigo pero entonces el problema es que cuando subrayo lo que esta dentro del edit y digito una letra pues el edit queda solo con la letra que digite, pero el valor de i sera lo que habia escrito anteriormente mas la letra que digite :confused:.

Bueno, muchas gracias de antemano ;).

egostar 27-08-2008 17:38:24

Hola

No entiendo que es lo que quieres hacer, podrías ser mas claro en tu pregunta?

Salud OS

JXJ 27-08-2008 22:02:49

es que al ser onkeypress.

es al presionar la tecla. y no se toa en cuenta la parte visual. sino el evento

prueba, con el edit. con onchange.

o si no. con un timer. que se ejecute con el evento con keypress
y que se auto detenga asi mismo.
al timer tu elije cuantos milisegundos son apropiados. o al segundo se ejecute el timer

Código Delphi [-]

onkeypress
begin
timer1.enabled:=True;

end;


Form1.ontimer1(Sender:Tobject)
begin
Edit1.text:=Edit1.text+key;
i:=edit1.text;

Timer1.enabled := False

end;

Khronos 27-08-2008 23:19:34

El evento que necesitas es OnKeyUp. Este evento se lanza cuando levantas la tecla, el evento OnKeyPress se lanza cuando pulsas la tecla y antes de que se escriba y el evento OnKeyDown se lanza cuando la tecla está pulsada.

Salu2

principiante22 28-08-2008 02:09:01

Muchas gracias Khronos tu comentario me sirvio de mucho :D


La franja horaria es GMT +2. Ahora son las 22:37:17.

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