Register Hotkey Problem

  • VB.NET

    Register Hotkey Problem

    Ich möchte einen Key registrieren welcher aber nicht vom Programm vestgelegt wird sondern vom User.

    Entweder das das Programm solange auf einen Tastenanschlag lauscht,
    diesen dann registriert oder mit einer Inputbox wo man vor Programmstart die Taste eingeben muss.

    mein derzeitiger code:

    VB.NET-Quellcode

    1. Private Declare Function RegisterHotKey Lib "user32" (ByVal hWnd As IntPtr, ByVal id As Integer, ByVal fsModifier As Integer, ByVal vk As Integer) As Integer
    2. Private Declare Sub UnregisterHotKey Lib "user32" (ByVal hWnd As IntPtr, ByVal id As Integer)
    3. Private Const Key_NONE As Integer = &H0
    4. Private Const WM_HOTKEY As Integer = &H312
    5. Public abfrage As Boolean = False
    6. inputbox("bitte taste eingeben","")
    7. 'wie kann man den tastennamen zu einem integer machen?
    8. public taste as integer = 0 ' variabler wartet auf wert
    9. sub register
    10. For i As Integer = 1 to 255
    11. RegisterHotKey(Me.Handle, i, Key_NONE, i)
    12. Next
    13. end sub
    14. Protected Overrides Sub WndProc(ByRef m As Message)
    15. If m.Msg = WM_HOTKEY Then
    16. Select Case m.WParam
    17. Case 1 to 255
    18. If abfrage = true Then
    19. taste = 'keine ahnung
    20. end sub


    bin für jede hilfe dankbar :)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „soulreafer“ ()