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
- Public Class Form1
- Dim tmp As String
- Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Keys) As Short
- Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
- Dim tmp As String = Label1.Text
- 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
- Label1.Text = e.KeyChar
- Label1.Text = tmp & e.KeyChar
- End If
- End Sub
- End Class