PDA

Ver la Versión Completa : Curiosidad...


superhopi
19-08-2004, 10:54:02
A ver si me podéis ayudar (seguro que sí)

Cuando tengo un form con muchos edits, y son campos para rellenar, me gusta que apretando al intro pase al siguiente campo para evitar al usuario molestarse.

El caso que lo hago de la siguiente:

- En el evento on key press -> if key=#13 then edit2.setfocus;

y el pequeño inconveniente es que hace un pequeño bip que llega a ser molesto cada vez que se aprieta al intro.

¿Alguien conoce alguna forma de hacerlo distinta a la mía?

Gracias, y un saludo.

tcp_ip_es
19-08-2004, 11:20:38
prueba con esto a lo mejor te funciona :D


if key=#13 then
begin
key:= #0;
edit2.setfocus;
end;


Saludos, Tony

superhopi
19-08-2004, 12:23:02
Genial, gracias,
pero , como aprendeis esas cosas? yo es que no las leo en ningun libro, y si no me las cuentan... pues como que no las se.

Gracias y un saludo

marcoszorrilla
19-08-2004, 12:35:20
Sería conveniente que revisarás este hilo:

http://www.clubdelphi.com/foros/showthread.php?t=11584&highlight=enter+tab%2A

Un Saludo.

jachguate
19-08-2004, 15:22:50
begin
if key = #13 Then
begin
edit2.setfocus;
key := #0;
end;


Hasta luego.

;)

moesis
22-08-2004, 03:55:45
Saludos

Estando totalmente de acuerdo con todas las respuestas que tienes en el hilo, te recomendaría que lo hicieras de otra forma....

Dado que todos los TEdit comparten la misma funcionalidad (o al menos eso he entendido) puedes asignarle a todos los eventos KeyPress de todos los controles el siguiente código...


begin
if key = #13Then
begin
// edit2.setfocus;
Perform(WM_NEXTDLGCTL, 0, 0);
key := #0;
end;
end;

De esta forma te evitas hacer referencia al siguiente control, y por lo tanto evitas escribir código superfluo para la unidad, sin mencionar la claridad de código así como el asegurarte de que el siguiente control que recibe el foco es el correcto...

Espero haberte ayudado un poco más de lo que lo han hecho los compañeros del foro.

superhopi
22-08-2004, 20:32:44
Buen consejo, gracias.

superhopi
22-08-2004, 20:33:20
Tomo nota mejor dicho ^_^