Próbuję wykryć jednoczesne naciśnięcie klawiszy "Control" i "t" w VB.NET. Kod mam tak daleko jest w następujący sposób:Jak wykrywać jednoczesne naciśnięcia klawiszy, takie jak "Ctrl + T" w VB.NET?
Private Sub frmTimingP2P_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyValue = Keys.ControlKey And e.KeyValue = Keys.T Then
MessageBox.Show("Ctrl + T")
End If
End Sub
mogę wykryć jeden klucz lub inny usuwając oraz oświadczenie, a drugi keyvalue stwierdzenie, ale ja naprawdę nie dostać nic, gdy próbuję tego. Czy istnieje inna metoda?
Dzięki
Aha, gotcha. Mam jednak jeszcze jedno pytanie. Który klucz zazwyczaj chcesz użyć do modyfikatora? Czy to nie ma znaczenia? – J2Tuner
Wierzę, że 'And' w VB jest zarówno operatorem bitowym, jak i operatorem logicznym, w zależności od kontekstu. 'AndAlso' jest tylko operatorem logicznym powodującym zwarcie. – Kratz
@Kratz Chociaż technicznie poprawne, jestem przekonany, że użycie 'AndAlso' wyłącznie jako warunkowego operatora sprawia, że kod jest bardziej przejrzysty i mniej podatny na błędy. Uważam to za (udokumentowany) błąd kompilatora, który "nawet" działa tutaj. –