gedrücktn key auslesen und eine funktion ausführen

Ich habe schon 2 stunden lang nach einer lösung gesucht und immer noch nix gefunden. Ich benutze Visual Basic 2008 Express Edition.

Die Frage ist: Wie kann ich in meiner Form1 (nachdem ich KeyPreview angeschaltet habe) durch einen Knopfdruck (zb. F1) eine Funktion auslösen (zb. Form2.Show)?

Bitte auch wenn möglich einen Beispielcode posten.

Hallo Johannrek,

hier ein link der dir hoffentlich hilft.
http://home.arcor.de/visualbasicforum/tipps/tipp5-5.htm

LG
Spargel54321

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ich benutze Visual Basic 2008 Express Edition.

Sorry aber ich habe ja erwähnt mit was ich hier programmiere, ausserdem ist dies hier das .net forum und in dem link ist die visual basic 6 programmiersprache, die nicht mit vb2008 kompatibel ist…

Bitte etwas nützlicheres posten…

aber danke für deine antwort :wink:

Hallo!

Dein Form stellt doch eine ganze Reihe von Events zur Verfügung, um auf Tasten zu reagieren: KeyUp, KeyDown, KeyPress.
In deren EventArgs findest Du immer Angaben zur betreffenden Taste.
Bei F1 wird es bei KeyPress ein bisschen schwierig, weil das letztlich auf druckbare Zeichen beschränkt ist, aber z.B. bei KeyDown bekommst Du auch ganz einfach heraus, welche Funktionstaste gedrückt wurde.
Was Du dann mit dieser Info machst, bleibt komplett Dir überlassen - der dazu nötige Code steht schlicht in der Ereignisbehandlungsroutine zum KeyDown-Ereignis. Wie Du ein Form anzeigst, braucht man Dir ja hoffentlich nicht mehr explizit zu schreiben… :smile:

Gruß,
Martin

les den Post von Martin Müller noch mal aufmerksam durch. Darin steht, dass deine Form eine ganze Reihe an Events hat, z.B. KeyPress, KeyDown, usw. Für deinen Fall mit der Taste [F1] benutzen wir das KeyDown event. Und in der Variable e findest du die ganzen Info’s zu der Gedrückten Taste. Bsp.:

Sub Form1\_KeyDown(ByVal sender As Object, e As EventArgs) Handles Me.KeyDown
 If e.key = key.f1 Then
 Form2.Show()
 Else
 machwasanderes()
 End If
End Sub