例如:在Form1中有3命令按钮command1、2、3,其中command1、2已设置了enter和esc键,但command3为了方便一些使用者用不惯"ALT+*"这种方式,我想能不能使用F1、F2...方式来实现command3的单击事件。不知道有没有这种设置方法? 
真诚求教

解决方案 »

  1.   

    呵呵,F1、F2...这些都是系统(VB)的系统键最好不要去动它!
    实在要做也不是不行!
    只要在Form_KeyPress里判断keyascii的值是F1、F2...(键值去查MSDN)
    例:
    if keyascii=(F1的键值,自己去找) then
       call command3_Click
    endif
      

  2.   

    to: Terry_05(Terry) 
    好象不行耶,我用如下代码,运行时按下F1键时没能触发command3_click,麻烦再帮我看看那里错了?Private Sub Form_KeyPress(KeyAscii As Integer)
    If KeyAscii = 241 Then
       Call Command3_Click
    End If
    End Sub
      

  3.   


    Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
        If KeyCode = 112 Then
            Command1_Click
        End If
    End Sub前提是窗体的KeyPreview属性必须为true
      

  4.   

    因为要设置数个COMMAND,我用以下代码也行吧?因为要设置数个COMMAND,我用以下代码也行吧?Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
    Case vbKeyF1: Call Command1_Click
    Case vbKeyF2: Call Command2_Click
    Case vbKeyF3: Call Command3_Click
    Case vbKeyF4: Call Command4_Click
    End Select
    End Sub