VisualBasic 2010 Brauche Hilfe (HotKeys)

02/02/2012 16:50 Shishihara#1
Hallo ePvP

Ich hätte eine Frage bezüglich visual basic 2010

Wie kann man machen das wenn ich z.B Ctrl + Z (im selbsterstellen programm)
drücke das dann eine Funktion erledigt wird (z.b Timer1.Stop)

Danke für eure Antworten im vorraus :>
02/02/2012 16:58 .SkyneT.#2
GetAsyncKeyState sollte dir da weiter helfen.
02/02/2012 17:04 warfley#3
Quote:
GetAsyncKeyState
Mit Kanonen auf Spatzen schießen?

Entweder gibt es ein Objekt oder ein Programm Event dazu bin mir nicht mehr sicher
02/02/2012 17:38 Grûan#4
Geht ganz einfach mit dem 'KeyDown' Event.
Quote:
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.Control = True And e.KeyCode = Keys.Z Then
'Ctrl + Z
End If
End Sub
02/03/2012 00:49 Jeoni#5
Das KeyDown-Event springt aber wirklich nur an, wenn man in der Form ist, also das Programm als aktives Fenster hat. Wenn der Hotkey aber auch dann funktionieren soll, wenn man nen Browser oder ein Spiel aufhat, braucht man einen Globalen Hotkey. [Only registered and activated users can see links. Click Here To Register...] ist zum Beispiel ein Umsetzungsweg dafür (hab aber keine Ahnung wie gut das ist). Aber sofern du den HotKey nur im Programm brauchst ist das KeyDown-Event wesentlich sinnvoller.
Hoffe, dass ich helfen konnte ;)
Jeoni
02/03/2012 08:34 boxxiebabee#6
Kommt drauf an wie du es haben möchstes.
Am einfachsten, ohne großen Aufwand wäre wie oben bereits beschrieben über's KeyDown Event, funktioniert allerdings nur dann wenn man sich in der jeweiligen Form befindet.

Ansonsten machst du's über nen Low-Level KeyHook, oder RegisterHotKey() API (von Windows).
Sonst könntest du auch diese Library verwenden -> [Only registered and activated users can see links. Click Here To Register...]

greetz, lizzaran
02/03/2012 10:50 Kraizy​#7
[Only registered and activated users can see links. Click Here To Register...]
02/04/2012 09:54 mrapc#8
Und noch ein Tipp ist aber auch nur möglich wenn die Form im Fokus steht

Du verwendest ein MenuStript in den Code kommt deine Funktion
Code:
 timer1.start
In die Eigenschaften dann bei HotKey (STRG + Z) mach ich so weil beim Menü Stript wenn man oben rechts auf den kleinen Pfeil klickt man die Standart Elemente einfügen kann und da sin die Typischen Codes von Windows schon drin (strg + n für neues Dokument etc. )

xKrazys Tipp ist Denk ich aber Grundsätzlich besser