GetAsyncKeyState

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    GetAsyncKeyState

    Tach.
    Hätte ein Problem mit dem GetAsyncKeyState.
    Undzwar habe ich einen Keybinder der auch funktioniert.
    Er lässt sich wunderbar mit einem Button per Click an und ausschalten.
    So ich hatte vor wenn ich F12 drücke das er dann an bzw aus geht.
    Das ganze hab ich mir so vorgestellt:

    VB.NET-Quellcode

    1. If GetAsyncKeyState(Keys.F12) Then
    2. Timer1.Enabled = False
    3. Label2.Text = "Keybinder ist aus"
    4. Else
    5. Timer1.Enabled = True
    6. Label2.Text = "Keybinder ist an"


    Es war auch vorher schon so drinne

    VB.NET-Quellcode

    1. If GetAsyncKeyState(Keys.F12) Then
    2. Timer1.Enabled = True
    3. Timer1.Enabled = False
    4. Label2.Text = "Keybinder ist aus"
    5. Else
    6. Timer1.Enabled = True
    7. Label2.Text = "Keybinder ist an"
    8. End If


    Ich habe es einfach von dem Button übernommen

    VB.NET-Quellcode

    1. If Timer1.Enabled = True Then
    2. Timer1.Enabled = False
    3. Label2.Text = "Keybinder ist aus"
    4. Else
    5. Timer1.Enabled = True
    6. Label2.Text = "Keybinder ist an"
    7. End If


    Das Ausschalten funktioniert auch nur er geht einfach nicht an.
    Auch wenn die funktion mit dem Ausschalten nicht drinne ist.
    Ich rate mal:
    ein mal Drücken F12: Ein
    noch mal Drücken F12: Aus
    :?:

    VB.NET-Quellcode

    1. If GetAsyncKeyState(Keys.F12) Then
    2. If IstEin Then
    3. 'schalte aus
    4. Else
    5. 'schalte ein
    6. End If
    7. End If
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    So wie ich es verstehe meinst du es so:

    VB.NET-Quellcode

    1. If GetAsyncKeyState(Keys.F12) Then
    2. If Timer1.Enabled = True Then
    3. Timer1.Enabled = False
    4. 'schalte aus
    5. Else
    6. Timer1.Enabled = True
    7. 'schalte ein
    8. End If
    9. End If


    Aber da geht er nicht an nicht aus
    Etwa so:

    VB.NET-Quellcode

    1. If GetAsyncKeyState(Keys.F12) Then
    2. IstEin = Not IstEin
    3. Timer1.Enabled = IstEin
    4. End If
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Fehler 2 "IstEin" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden. C:\Users\Thomas\Desktop\ Keybinder\ Keybinder\Form1.vb 59 26 Keybinder

    Versteh ich nicht :o
    IstEin ist ein von mir erfundenes Flag, das musst Du nachempfinden.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!