Private Sub text1_KeyPress(KeyAscii As Integer)End Sub通过KeyAscii能获取一般的按键事件,可是delete,tab等键的事件如何获取

解决方案 »

  1.   

    应当使用 KeyDown 和 KeyUP 事件过程来处理任何不被 KeyPress 识别的击键,诸如:功能键、编辑键、定位键以及任何这些键和键盘换档键的组合等。与 KeyDown 和 KeyUp 事件不同的是,KeyPress 不显示键盘的物理状态,而只是传递一个字符。
      

  2.   

    delete可从KeyDown中获取。只有tab不同,它会激发LostFocus,以前做过的例子:http://community.csdn.net/Expert/topic/3440/3440539.xml?temp=.8043177
    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