当在 text 中 按下 键盘上的 “tab”键时如何取得它的代码和键名?
比如,按下 回车键 时,它的 代码是 “13 ”,键名 是 “enter”

解决方案 »

  1.   

    Private Sub Text1_KeyPress(KeyAscii As Integer)
    MsgBox KeyAscii
    KeyAscii = 0
    End Sub
      

  2.   

    好象不对呀!我用以下代码:
    Private Sub Text2_KeyPress(KeyAscii As Integer)
      If KeyAscii = 9 Then
        
        MsgBox "tab"
      End If
    End Sub但没有 弹出 “tab”呀???
      

  3.   

    Option Explicit'得用这个事件
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
        If KeyCode = 9 Then
            MsgBox "tab"
        End If
    End Sub
      

  4.   

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
        MsgBox "125"
        If KeyCode = 9 Then
            MsgBox "tab1255"
        End If
    End Sub这段代码根本不运行呀!
    另外,我要的是某控件比如 textbox 中获得键盘的上被按下的 键的 code 和 name ???
      

  5.   

    Option ExplicitPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
        MsgBox "125"
        If KeyCode = 9 Then
            MsgBox "tab1255"
        End If
    End Sub
      

  6.   


     KeyCode = 9 是检测不到呀!但是 8, 13 都可以的!
    很奇怪!!
      

  7.   

    13 是 回车
    tab是9  控制字符是HT
      

  8.   

    晕了  真的 在tab 就直接跳走了  不能处理 了 2种解决方法 
    1 在接受光标的控件上 处理事件
    2 用API 检测 什么时候按tab
      

  9.   

    既然只是在tab键上跳走 那它跳走的时候text失去焦点,我们可以把这个直接显示“msgbox 9 ”呀  然后让text重新获得焦点Private Sub Text1_KeyPress(KeyAscii As Integer)
      MsgBox KeyAscii
    End SubPrivate Sub Text1_LostFocus()
      MsgBox 9
      Text1.SetFocus
    End Sub
      

  10.   

    我的问题是:当在 text 中 按下 键盘上的 “tab”键时如何取得它的代码和键名?
    比如,按下 回车键 时,它的 代码是 “13 ”,键名 是 “enter”
      

  11.   

    你的问题除了api几乎无法解决,因为:只有把所有控件tabstop都设置为false后,按tab键才回激发keydown,keyup,keypress事件。