Visual Basic : Auf Tastendruck Programm schließen lassen

4 Antworten

Zuerst natürlich in der Form (Designer) KeyPreview auf True setzen, dann im Code das hier einfügen:

Sub EndeAufTastendruck(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles Me.KeyPress

If e.KeyCode = Keys.P Then Me.Close() ' Oder für ein sofortiges Beenden der gesamten Anwendung anstelle von Me.Close() die drei Buchstaben «End» verwenden. End If

Am einfachsten ist, das hier einzufügen:

Sub New()
   Me.KeyPreview = True
End Sub

Sub EndeAufTastendruck(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles Me.KeyPress

   If e.KeyCode = Keys.P Then
        Me.Close()   ' Oder für ein sofortiges Beenden der gesamten Anwendung anstelle von Me.Close() die drei Buchstaben «End» verwenden.
   End If

End Sub

Sollte funktionieren (ist aus dem Kopf geschreiben).

Mit freundlichen Grüssen, Stefan Wittwer

Zuerst natürlich in der Form (Designer) KeyPreview auf True setzen, dann im Code das hier einfügen:

Sub EndeAufTastendruck(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles Me.KeyPress

If e.KeyCode = Keys.P Then Me.Close() ' Oder für ein sofortiges Beenden der gesamten Anwendung anstelle von Me.Close() die drei Buchstaben «End» verwenden. End If

End Sub

Wenn der Tastendruck unabhängig von Buttons geprüft werden soll, musst du den Callback an die Form hängen und dort die Funktion Form_KeyDown definieren, um den Tastendruck abzufangen.

Wenn dann deine Form nicht im Fokus ist (also der Benutzer einen anderen Dialog selektiert hat), springt die Funktion natürlich nicht an.

Die Form muss auch KeyPreview=true haben, wenn ich mich recht entsinne...

p0w3rsquart 
Fragesteller
 17.10.2013, 14:25

Danke ;)

0
p0w3rsquart 
Fragesteller
 17.10.2013, 15:22

Okay, und wie macht man das mit dem KeyDown jetzt genau?

0
danielapershin  30.10.2013, 15:18
@p0w3rsquart

ich sags dier. beispil: wen f4 gedrückt werden sol

private sub form1_Keydown(byval sender as object, byval e as system.windows.forms.keyeventargs) handles me.keydown

if e.keycode=keys.f4 then

me.close

end if

end Sub

0