Bei minimierter Form Tastenanschläge registrieren

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Bei minimierter Form Tastenanschläge registrieren

    Hey, ich habe versucht das meine Form meine Tastenanschläge auch bei minimierter Form registriert und sie in einen Label aufzeichnet, habe dafür diesen Quellcode hier versucht, weiß jedoch nicht wieso es nur klappt wenn die Form im Fokus ist (also nicht minimiert ist):

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim tmp As String
    3. Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Keys) As Short
    4. Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
    5. Dim tmp As String = Label1.Text
    6. If GetAsyncKeyState(Keys.A) = -32767 Or GetAsyncKeyState(Keys.B) = -32767 Or GetAsyncKeyState(Keys.C) = -32767 Or GetAsyncKeyState(Keys.D) = -32767 Or GetAsyncKeyState(Keys.E) = -32767 Or GetAsyncKeyState(Keys.F) = -32767 Or GetAsyncKeyState(Keys.G) = -32767 Or GetAsyncKeyState(Keys.H) = -32767 Or GetAsyncKeyState(Keys.I) = -32767 Or GetAsyncKeyState(Keys.J) = -32767 Or GetAsyncKeyState(Keys.K) = -32767 Or GetAsyncKeyState(Keys.L) = -32767 Or GetAsyncKeyState(Keys.M) = -32767 Or GetAsyncKeyState(Keys.N) = -32767 Or GetAsyncKeyState(Keys.O) = -32767 Or GetAsyncKeyState(Keys.P) = -32767 Or GetAsyncKeyState(Keys.Q) = -32767 Or GetAsyncKeyState(Keys.R) = -32767 Or GetAsyncKeyState(Keys.S) = -32767 Or GetAsyncKeyState(Keys.T) = -32767 Or GetAsyncKeyState(Keys.U) = -32767 Or GetAsyncKeyState(Keys.V) = -32767 Or GetAsyncKeyState(Keys.W) = -32767 Then
    7. Label1.Text = e.KeyChar
    8. Label1.Text = tmp & e.KeyChar
    9. End If
    10. End Sub
    11. End Class