Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   La tecla Tab en delphi? (https://www.clubdelphi.com/foros/showthread.php?t=467)

danytorres 15-05-2003 15:31:53

La tecla Tab en delphi?
 
Buenos dias foro. mi pregunta es la tecla o la tabulacìon cual es?
el enter es( #13) y Tab ?.

-----------------------------------------------------

Un saludo..... :)

andres1569 15-05-2003 15:40:50

Hola:

Tab es #9. En la unit windows vienen definidas todas estas teclas con su número ASCII correspondiente, con los prefijos VK_

Un saludo

Lepe 15-05-2003 16:12:48

Tal y como dice andres, VK_TAB es la tecla tabulador y la tecla intro es VK_RETURN, aunque si lo usas dentro del evento KeyPress de un control, éste es de tipo caracter, no un entero, así que has de usar:

if ord(VK_TAB)=Key then
...

Mientras que si lo usas en un evento KeyUp o KeyDown

if VK_TAB= key then
...

( para mi es mas cómodo utilizar las constantes ( Virtual Keys = VK ) ya que me olvido del valor que realmente tiene.


Un saludo

Julio César 15-05-2003 20:23:48

http://www.asciitable.com/
En esta dirección encontraras todas las teclas en código ASCII.

Ejemplo:

Begin
if (key=#9) then //Si la tecla pulsada es igual a TAB
showmessage('Pulsó la tecla Tab'); //muestra este mensaje
end;


Espero que te sirva de algo, a partir de ahí puedes hacer lo mismo con las demas.

danytorres 16-05-2003 14:36:08

Gracias a todos por ayudarme, el evento es KeyPress e intente con:

1)- If (Key = #9) Them

2)- if ord(VK_TAB)=Key then

Y ninguna reacciona al presionar la tacla Tab.

Agradeceria que mesiguieran dando opciones.

__hector 16-05-2003 15:17:40

Utiliza el evento onKeyDown/onKeyUp en vez de keyPress.

Ruben_Cu 17-05-2003 01:48:52

Hola dany, no se la importancia que tiene para ti el uso de esa tecla, pero a mi modo de ver es un poco conflictiva.
Ella es utilizada para el cambio de foco de los controles y ese mensaje tiene un nivel de jerarquización superior a la captura de los eventos del control.
Realicé algunas pruebas y solo logro que responda usando el evento OnKeyUp cuando el control adquiere foco venido desde otro control.
Es por eso que el comportamiento normal no se cumple con esta tecla cuyo destino prioritario es mover el foco.
Espero que de algo sirvan estos comentarios
Saludos

danytorres 17-05-2003 03:36:53

Gracias Ruben, tienes toda la razon la, te planteo el ecenario en un formulario X tengo n cantida de Dbedit, cual es la importancia que tiene para mi la tecla Tab, es que la insercion de datos no se realiza con el tecla do sino con una pistola lectora de codigos de Barra( Cunado la pistola lee el codigo seguidamente realiza un Tab para que avanse a la siguiente caja de texto), eso esta bien en algunos formularios pero existe uno que cuando capturo el codigo de barra como dige anteriormente realiza un tab y salta a otro DBEdit cosa que no quiero porque deseo que se quede en el mismo DBEdit con ese tab aplico en el evento OnKeyUp (If key = VK_Tab Then) para que para validar su existensia en la Base de Datos..


Al fin lo logre Colocanto en false la propiedad de Tabstop en falso de todas las demas casillas que solo me servian para mostrar datos y el la que capturo el codigo de Barra y realizo la validación esa propiedad se la coloco en True, claro usando el evento OnKeyUp (If key = VK_Tab Then). Y asi si funsiona.
----------------------------------------------------------

Gracias a todos por su valiosa ayuda.
__________________

Un saludo...

Sapiem 17-02-2009 05:02:33

Sobre Tecla TAB
 
Todo está muy bien para cambiar el foco de los controles como bien dicen, pero y si lo que deseo es dentro de un TMemo por ejemplo agregar un Tab de caracteres, como reconozco el tab del usuario sin que sea que cambie de control, comprenden? Hace tiempo estoy tratando de lograr esto en un simple editor de textos y es imposible la menos hasta donde he podido intentar. Lo cierto es que no puedo dejar que TAB me funcione dentro de un TEdit o TMemo como caracter sin que me responda como salto de control y no es la idea.:confused:

roman 17-02-2009 06:09:55

En el caso de un Edit no sé, pero con un Memo sólo tienes que poner su propiedad WantTabs en true.

// Saludos


La franja horaria es GMT +2. Ahora son las 02:52:19.

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