![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
¿Que versión de Delphi estás utilizando? Porque con el soporte unicode de las nuevas versiones, creo que dá más de un problema con los Ascii, Ansi y widestring
Un saludo |
|
#2
|
||||
|
||||
|
Hola ElDioni.
Cada tecla tiene asociado dos valores, uno es el código interno de la tecla (código de rastreo) y el otro el código ASCII del caracter que tiene asignado. Por ejemplo, tanto la letra 'A' como la letra 'a' tienen un valor scan code igual a 65, sin embargo, el código ASCII de la letra 'A' es 65 y el de la letra 'a' es 97. El parámetro Key en los eventos OnKeyDown y OnKeyUp contiene el valor del código de rastreo del teclado, para obtener el código ASCII de la tecla presionada hay que evaluar el valor del parámetro Key en el evento OnKeyPress. El órden en que se disparan los eventos anteriores es OnKeyDown, OnKeyPress y OnKeyUp. Estos son los códigos de rastreo de un teclado estándard: ![]() Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#3
|
||||
|
||||
|
Hola, gracias por contestar,
mi versión de delphi es la 2005. he estado buscando con respecto a lo que me comentas ecfisa pero hay una cosa que no acabo de entender o no se de donde sale, como hemos comentado la 'A' y la 'a' aparecen como 65 en el evento OnKeyDown, pero si voy al dibujo que me has adjuntado no veo donde aparece ese 65 o de donde lo tengo que sacar, me lo podrías aclarar. Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta. |
|
#4
|
||||
|
||||
|
Hola ElDioni.
Los valores del scan code en la imágen estan en hexadecimal: (41)h = 65d. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#5
|
|||
|
|||
|
Hola...
Puedes usar la constante VK_ADD para detectar si se pulsó la tecla +. Esta y otras constantes las encuentras en la unidad Windows.pas. También en la ayuda de Delphi, bajo el tema Virtual Key Codes podrás encontrar una lista de todas estas constantes. Saludos... |
|
#6
|
||||
|
||||
|
Hola ElDioni.
Aquí conseguí una tabla completa de scan codes Si quisieras obtener el número de tecla (Hex Scan Code) podrías usar la función MapVirtualKey. Un ejemplo: Pero no se puede obtener código ASCII de forma directa a partir del valor recibido. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#7
|
||||
|
||||
|
Hola
Aqui esta este programa que genera lo de las techas entre otras cosas. Saludos
__________________
Siempre Novato Última edición por Caral fecha: 17-09-2012 a las 01:19:12. |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Sustituir Codigo ASCII Fichero texto | lacovera | Varios | 12 | 13-11-2009 14:38:28 |
| Convertir caracter a codigo ASCII | Tecnic2 | OOP | 13 | 28-03-2009 15:07:09 |
| Codigo ascii | Luli | Varios | 2 | 26-04-2005 10:11:13 |
| código ascii | davidgaldo | Varios | 5 | 10-11-2004 23:16:07 |
| Código ASCII estendido | rafita | Varios | 2 | 14-09-2004 14:01:10 |
|