Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Tab - Enter (https://www.clubdelphi.com/foros/showthread.php?t=31084)

Patricio 27-04-2006 14:52:22

Tab - Enter
 
Hola foro

Es posible hacer que al apretar Enter siga el orden que tiene en el Tab Order?

es decir en el evento press correspondiente poner algo como:

if key = 13
then ....que le de el foco al objeto que sigue en el TabOrder

saludos

Bicho 27-04-2006 15:18:05

Hola puedes hacer lo siguiente:

Código Delphi [-]
if key = 13 then begin
      Key := #0; //cambiamos la tecla por tab
      Perform(WM_NEXTDLGCTL, 0, 0); //pasamos al siguiente control
end;

Espero te sirva

Saludos

Patricio 27-04-2006 15:30:14

gracias
 
lo voy a probar gracias

Neftali [Germán.Estévez] 27-04-2006 15:33:39

También puedes utilizar el componente KeysOnForm que puede encontrar en mi página; Te permite eso y algunas cosas más (combinación para avanzar al siguiente y anterior, TAB, teclas de función, ESC,...); Simplemente lo sueltas en un formulario y lo activas.

reevil 01-05-2006 07:54:30

flechas para lo mismo
 
hola, quiero usar las flechas como tab izq o arriba como para regresar al componente anterior y der o abajo para el siguiente...intente con actionlist, actionmanager, el componente de neftali y la opcion que mejor me funciono fue poner un codigo similar al de Bicho en el evento onkeypress de cada uno de los componentes... la duda es: no es mucho codigo de sobra?? tomando en cuenta que en el form que lo use tengo 17 componentes y en algunos casos podria haber mas... saludos, una pagina muy util

pfsoft 01-05-2006 08:34:33

Yo personalmente hago lo siguiente en el OnKeyDown del primero, y despues selecciono el resto de controles a la vez, y le asigno al OnKeyDown de todos el del primero. En el OnKeyDown del primero pongo lo siguiente:

begin

if ( (Key = VK_RETURN) or (Key = VK_DOWN) ) then
SelectNext(ActiveControl, true, true);

if (Key = VK_UP) then
SelectNext(ActiveControl, false, true);

end;

Y andando :-)

reevil 01-05-2006 08:44:41

Cita:

Empezado por pfsoft
Yo personalmente hago lo siguiente en el OnKeyDown del ...

:eek::D gracias por la pronta respuesta, saludos

Casimiro Notevi 01-05-2006 09:43:57

Cita:

Empezado por Neftali
También puedes utilizar el componente KeysOnForm que puede encontrar en mi página; Te permite eso y algunas cosas más (combinación para avanzar al siguiente y anterior, TAB, teclas de función, ESC,...); Simplemente lo sueltas en un formulario y lo activas.

Muy útil todo lo que he encontrado en tu página :)


La franja horaria es GMT +2. Ahora son las 07:34:26.

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