一个很有挑战的小问题!我想按tab相当于按了向下的箭头这个键,怎么可以实现?

解决方案 »

  1.   

    不好意思,补充一点,tab似乎在keypress keydown keyup里面都不响应
      

  2.   

    呵呵,那我也补充一下,TAB之所以在那些事件里不响应,是因为有TABORDER的关系,就是默认情况下用TAB键来移动控件焦点,所以不会捕获它。不过只要把TABSTOP属性设为FALSE就允许捕获它了。
      

  3.   

    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
         
    Private Sub Text1_LostFocus()
         If GetKeyState(vbKeyTab) < 0 Then
             MsgBox "按下了“TAB”"
             '在这里添加代码
             Text1.SetFocus
         End IfEnd Sub
      

  4.   

    那如何把tab替换成键盘上那个向下的箭头的方向箭呢?
      

  5.   

    select keyascii
    case 8 keyascii=0
    sendkeys"{keydown}"
    end select
      

  6.   

    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As IntegerPrivate Sub Text1_LostFocus()
         If GetKeyState(vbKeyTab) < 0 Then
         
             MsgBox "按下了“TAB”"
             '在这里添加代码
              Text1.SetFocus
              SendKeys "{down}"
         End IfEnd Sub
      

  7.   

    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As IntegerPrivate Sub Text1_LostFocus()
         If GetKeyState(vbKeyTab) < 0 Then
         
            ' MsgBox "按下了“TAB”"
             '在这里添加代码
              Text1.SetFocus
              SendKeys "{down}"
         End IfEnd Sub
    '完全实现你的要求