我有一段时间没有使用 VB,但这里有一些东西可能会对你有所帮助。您可以尝试创建一个布尔变量(真假),称为 ctrl 或类似的东西。在第一次按下控制键时将其设为真,然后在他们按下控制键时将其设为假。然后,您可以创建另一个变量来存储所有称为 keycodes 的键码或其他东西。当按下除控件之外的键时,将键码设为 -1。这是一些示例代码:
Dim kys=-1
Dim ctrl=false
Private Sub TextBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
if e.KeyValue = Keys.Control then
ctrl=false
else
kys=-1
end if
End Sub
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
if e.KeyValue = Keys.Control then
ctrl=true
else
kys=e.getKeyValue
end if
'Control c
if ctrl=true & kys=Keys.c then
MsgBox("It Worked!")
end if
End Sub
顺便说一句,对于这样的事情,e.KeyValue 通常比 e.keyCode 更好,它更容易使用,因为您可以只使用“Keys”而不是查找所有键码。