vb显示键盘按键的程序:要编一个vb程序:按下键盘按键时,在label显示按下的是哪个键。
要编一个vb程序:按下键盘按键时,label显示按下的是哪个键。当按下CapsLock键,在状态栏上的文字“CapsLK“可在响应和禁用状态下切换,并根据CapsLock...
要编一个vb程序:按下键盘按键时,label显示按下的是哪个键。当按下CapsLock键,在状态栏上的文字“CapsLK“可在响应和禁用状态下切换,并根据CapsLock键的状态,显示键入大写或小写字母。
下面是我已写好的代码,可是不知道为什么每次运行时按下键盘上的键,label总是显示不了按下的键,状态栏也毫无变化。。求大神帮帮忙!
Public Class Form1
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Static i As Integer
Dim n As Integer
Select Case e.KeyCode
Case Keys.CapsLock
i = i + 1
End Select
If i = 2 * n Then
statuslabel1.Enabled = False
Else
statuslabel1.Enabled = True
End If
If 65 <= e.KeyCode And e.KeyCode <= 90 Then
If statuslabel1.Enabled = False Then
Label1.Text = "键盘上的" & LCase(Chr(e.KeyCode)) & "键被按下"
Else
Label1.Text = "键盘上的" & Chr(e.KeyCode) & "键被按下"
End If
Else
e.Handled = True
End If
End Sub
Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
Label1.Text = ""
End Sub
statuslabel就是状态栏上写有CapsLK的statuslabel~ 展开
下面是我已写好的代码,可是不知道为什么每次运行时按下键盘上的键,label总是显示不了按下的键,状态栏也毫无变化。。求大神帮帮忙!
Public Class Form1
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Static i As Integer
Dim n As Integer
Select Case e.KeyCode
Case Keys.CapsLock
i = i + 1
End Select
If i = 2 * n Then
statuslabel1.Enabled = False
Else
statuslabel1.Enabled = True
End If
If 65 <= e.KeyCode And e.KeyCode <= 90 Then
If statuslabel1.Enabled = False Then
Label1.Text = "键盘上的" & LCase(Chr(e.KeyCode)) & "键被按下"
Else
Label1.Text = "键盘上的" & Chr(e.KeyCode) & "键被按下"
End If
Else
e.Handled = True
End If
End Sub
Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
Label1.Text = ""
End Sub
statuslabel就是状态栏上写有CapsLK的statuslabel~ 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询