2013-11-28 71 views
0

,我发现我的问题,每当我把按钮在我的设计的按键下不工作是有办法,使其在设计按钮甚至工作? 示例代码:如何通过按键使用按键?

If e.KeyValue = Keys.P Then 
MsgBox("adadddada") 
End If 


Private Sub Game_KeyDown(ByVal sender As System.Object, _ 
    ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown 

If e.KeyValue = Keys.Down Then 
  If (RArrowDown.Top <= ArrowDown.Top + ArrowDown.Height) And RArrowDown.Visible = True Then 
      offset_1 = RArrowDown.Top - ArrowDown.Top 
      Select Case offset_1 

       Case -10 To 15 
        'perfect 
        TimerMain.Enabled = False 
        Hit += 1 
        Score += 20 
        RArrowDown.Visible = False 
        Perfect.Visible = True 
        TimerPerfect.Enabled = True 
        GPerfect += 1 
        Combo_Counter += 1 
        RandomTime_1.Enabled = True 

       Case 16 To 50 
        'good 
        TimerMain.Enabled = False 
        Hit += 1 
        Score += 10 
        RArrowDown.Visible = False 
        Good.Visible = True 
        TimerGood.Enabled = True 
        GGood += 1 
        Combo_Counter += 1 
        RandomTime_1.Enabled = True 

       Case -30 To -11 
        'good 
        TimerMain.Enabled = False 
        Hit += 1 
        Score += 10 
        RArrowDown.Visible = False 
        Good.Visible = True 
        TimerGood.Enabled = True 
        GGood += 1 
        Combo_Counter += 1 
        RandomTime_1.Enabled = True 

      End Select 
     End If 
    End If end sub 
+0

你可以张贴一些代码,所以我们可以告诉什么是捕获按下按钮(文本框,表格等)? – LeftyCoder

+0

请展开该代码段以显示代码所在的位置 – Plutonix

+0

@LeftyCoder那样吗? –

回答

3

如果您没有可接收的关键事件的形式将处理它的窗体上的任何控制,但只要你添加控件,它除非您将KeyPreview表单属性设置为True,否则表单将重新对您的关键事件做出响应。

从上面的链接:

当此属性设置为true,窗体将接收所有按键响应,KeyDown和KEYUP事件。在表单的事件处理程序完成键击处理之后,将键击分配给具有焦点的控件。例如,如果KeyPreview属性设置为true,并且当前选定的控件是一个TextBox,则在由该窗体的事件处理程序处理击键后,TextBox控件将接收按下的键。要仅处理表单级别的键盘事件并且不允许控件接收键盘事件,请将表单的KeyPress事件处理函数中的KeyPressEventArgs.Handled属性设置为true。

您可以使用此属性来处理大部分的按键在你的应用程序,要么处理击键或调用相应的控制处理的击键。例如,当应用程序使用功能键时,可能需要在表单级别处理键击,而不是为可能接收按键事件的每个控件编写代码。

+0

如何设置这个的KeyPreview?私有子 –

+0

选择在设计形式使用F4选择在Visual Studio属性面板中,你会发现它在那里。 –

+0

伟大的工作有很大帮助,谢谢! –