Ir para conteúdo
Fórum Script Brasil
  • 0

Capturar Pressionamento D Tecla


Ozi

Pergunta

Salve Galera! Seguinte,

num post antigo perguntei sobre como detectar o pressionamento das teclas, o Greymalkin ate me deu a dica das APIs GetAsyncKeyState, GetKeyboardState ou GetKeyState. beleza, como não tenho experiencia com APIs até achei un ex. na net, mas o problema e que este exemplo só detecta a tecla ESC e eu queria q pegasse qualquer tcla que fosse pressionada e informasse ao usuario. abaixo o cod. que peguei na net:

Se alguém souber como fazer a modificação eu agradeço.

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

Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer

Private Const VK_ESCAPE = &H1B

Private Const VK_KEYDOWN As Long = -128

Private Const VK2_KEYDOWN As Long = -127

Dim continue As Boolean

Private Sub Form_Load()

Dim key As Long

Me.Show

continue = True

Do While continue

key = GetKeyState(VK_ESCAPE)

If key = VK_KEYDOWN Or key = VK2_KEYDOWN Then

If Not Me.Caption = "ESC is pressed" Then

Me.Caption = "ESC is pressed"

End If

Else

If Not Me.Caption = "ESC is not pressed" Then

Me.Caption = "ESC is not pressed"

End If

End If

DoEvents

Loop

End Sub

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Tenta esse código:

Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer

Private Const VK_KEYD = 68

Private Const VK_KEYDOWN As Long = -128

Private Const VK2_KEYDOWN As Long = -127

Dim continue As Boolean

Private Sub Form_Load()

Dim key As Long

Me.Show

continue = True

Do While continue

key = GetKeyState(68)

If key = VK_KEYDOWN Or key = VK2_KEYDOWN Then

If Not Me.Caption = "D is pressed" Then

Me.Caption = "D is pressed"

End If

Else

If Not Me.Caption = "D is not pressed" Then

Me.Caption = "D is not pressed"

End If

End If

DoEvents

Loop

End Sub

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu a intenção guest, mas assim fica na mesma. neste caso o prog só detectaria o pressionamento da tecla "D" mas eu qria o seguinte: se o usuario presiona "a" o sistema avisa que ele pressionou "a" mas se ele pressiona "h" tb é avisado q pressiono "h" e assim com todas as teclas do Teclado. Obs. gostaria que esse cod. detectase o pressionamento mesmo sem q o prog esteja com o foco. você sabe como fazer isso?

Abraços!!!

Link para o comentário
Compartilhar em outros sites

  • 0
alguém sb cm fazer pra detectar pression. de tecla usando api sem q o prog esteja com o foco(es 2º plano)? alg pde me dar uma força?

Com esse código você já está detectando isso. O problema é fazer com que ele detecte *todas* as teclas (isso, é claro, sem declarar uma por uma...).

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...