我已经看到类似的问题试图解决这个问题,但到目前为止似乎没有一个对我有用......
基本上,对于我的第一个VB项目,我正在创建一个虚拟键盘,其中从KeyDown上的资源播放声音。到目前为止,该程序似乎工作,除了每个键需要通过按下每个键播放声音之前鼠标点击(因此将对象置于焦点),我需要键才能播放声音单击键盘键(将对象置于KeyDown上)。以下是我的代码示例:
Private Sub C_KeyDown(ByVal sender As System.Object, ByVal e As PreviewKeyDownEventArgs) Handles C.PreviewKeyDown ' C is the label attached to the first 'Rectangle' (Key)
If (e.KeyCode = Keys.A) Then 'The A key should activate the C key on the keyboard
My.Computer.Audio.Play(My.Resources.C, _
AudioPlayMode.Background)
End If
End Sub
我在表单的属性下将KeyPreview设置为'True'。
由于
答案 0 :(得分:1)
首先,您必须将表单属性KeyPreview
设置为true
。然后,您可以使用from事件KeyDown
而不是单个按钮的事件
Private Sub MyForm_KeyDown(sender As Object, e As KeyEventArgs) Handles MyBase.KeyDown
Select Case e.KeyCode
Case Keys.A
Console.Beep(440, 200)
Case Keys.B
Console.Beep(494, 200)
Case Keys.C
Console.Beep(523, 200)
End Select
End Sub