SpikeL Comunidad
Hola, bienvenido a SpikeL Foro.

Si eres nuevo, deves registrarte.

Si ya tienes una cuenta, deves ingresar.

¡Muchas gracias!

PD: Si te has registrado pero no puedes logear tienes que activar tu cuenta desde tu e-mail.


Unirse al foro, es rápido y fácil

SpikeL Comunidad
Hola, bienvenido a SpikeL Foro.

Si eres nuevo, deves registrarte.

Si ya tienes una cuenta, deves ingresar.

¡Muchas gracias!

PD: Si te has registrado pero no puedes logear tienes que activar tu cuenta desde tu e-mail.
SpikeL Comunidad
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Detectar código Ascii de una tecla

Ir abajo

[ APORTE ] BIEN Detectar código Ascii de una tecla

Mensaje por Francohhh Mar Dic 28, 2010 11:11 pm

El siguiente código fuente utiliza la función Api GetAsyncKeyState. Sirve para obtener el código de una tecla presionada, es decir nos devuelva la tecla, en cualquier ventana de windows

El funcionamiento del ejemplo es muy simple, se realiza un bucle de 0 a 255, es decir para obtener solo los caracteres Ascii. En cada pasada del bucle, se le envía una variable a la función Api GetAsyncKeyState, si el valor de retorno es distinto a -32767, nos devuelve el valor de la tecla virtual presionada , es decir el código de tecla

Por último mostramos un Msgbox convirtiendo ese número con la función Chr del visual basic para obtener el caracter

Detectar código Ascii de una tecla Detectar-tecla-presionada-en-cualquier-ventana-en-windows

Controles

Colocar un Timer con la propiedad interval en 100 o inferior

Código fuente en un formulario

Código:
Option Explicit


'Declaramos el Api GetAsyncKeyState
Private Declare Function GetAsyncKeyState _
    Lib "user32" ( _
        ByVal vKey As Long) As Integer

Private Sub Timer1_Timer()
    Dim i As Integer
   
    For i = 0 To 255
        'Consultamos el valor de la tecla mediante el Api. _
        Si se presionó devuelve -32767 y mostramos el valor de i
        If GetAsyncKeyState(i) = -32767 Then

            MsgBox "Código de la tecla virtual :" & i & vbCrLf _
                & " La Tecla presionada es : " & Chr(i), vbInformation

        End If
    Next
End Sub

Private Sub Form_Load()
    ' intervalo para el timer
    Timer1.Interval = 50
End Sub
Francohhh
Francohhh
Administrador
Administrador

Administrador
Medallas
Detectar código Ascii de una tecla Prensa1Detectar código Ascii de una tecla Fundador1Detectar código Ascii de una tecla Participativo1Detectar código Ascii de una tecla Donar1
Detectar código Ascii de una tecla Staff1x Detectar código Ascii de una tecla Moderador1 Detectar código Ascii de una tecla Ao1 Detectar código Ascii de una tecla Desarrollo
Detectar código Ascii de una tecla Radio10 Detectar código Ascii de una tecla Radio110 Detectar código Ascii de una tecla Colabo10 Detectar código Ascii de una tecla Progra10
Detectar código Ascii de una tecla Cs110Detectar código Ascii de una tecla Postea10 Detectar código Ascii de una tecla Senor_10 Detectar código Ascii de una tecla Dueno_10
Detectar código Ascii de una tecla Futbol10

Mensajes Mensajes : 880
Puntos Puntos : 53096
Reputación Reputación : 41
Sexo Sexo : Masculino

Fecha de inscripción Fecha de inscripción : 23/03/2010
Edad Edad : 27
Localización Localización : Mar del Plata

http://www.spikel.org

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.