vb的程序有没有可能锁死键盘?如有,如何解决?急!!! callback里面把所有的wm_keydown消息都给拦下来我没试过,不过理论上应该行得通。不过这样做ctrl+alt+del应该是拦不到的,那样的话要用到keyboard hood,比较麻烦。第二个问题我不知道 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一定是在得到回车后,执行了Sendkeys "{Tab}"。这是win2000键盘驱动程序的BUG。解锁:控制面板-键盘-(重新设置刷新率)解决方案:方法一:打最新的win2000 service pack补丁。方法二:用下列API函数替代Sendkeys:1 Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte,ByVal _ bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)Const KEYEVENTF_KEYUP = &H2Const VK_TAB = &H9keybd_event VK_TAB, 0, 0, 0keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0或2Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" _ (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _ ByVal lParam As Long) As LongConst WM_KEYDOWN As Long = &H100Const VK_TAB As Long = &H9Dim retVal as longretVal = PostMessage(Me.hwnd, WM_KEYDOWN, VK_TAB, 0) Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)Private Const KEYEVENTF_KEYUP = &H2Private Const VK_TAB = &H9Public Sub KeyNext(ByRef KeyAscii As Integer) If KeyAscii = vbKeyReturn Then keybd_event VK_TAB, 0, 0, 0 keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0 KeyAscii = 0 End If End Sub调用:Private Sub Text1_KeyPress(KeyAscii As Integer) KeyNext KeyAsciiEnd Sub 根据权限设置按纽的enabled属性 为什么第二次单击时就失效了 欢迎大家使用"Printer first Gird" 打印预览控件~ :) 关于VB的困惑:24828.76<24828.76?! 二个问题一直没解,烦请大下帮忙??? 关于水晶报表打印的问题!解决以后送上300分! 帮帮忙-----我的程序打包后在其他的机子上不能运行? 如何获得计算机网络信息 teechart中日期时间格式的问题??? VB中怎样获取程序由SHell运行的DOS程序的结果 VB6里怎么播放RM文件?我找到了一个控制条控件,显示窗口在哪里? listview小问题! 有钱有分,谁愿意编这个程序,可与我联系。
这是win2000键盘驱动程序的BUG。解锁:
控制面板-键盘-(重新设置刷新率)解决方案:
方法一:打最新的win2000 service pack补丁。
方法二:用下列API函数替代Sendkeys:
1
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte,ByVal _
bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)Const KEYEVENTF_KEYUP = &H2
Const VK_TAB = &H9keybd_event VK_TAB, 0, 0, 0
keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0或
2
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _
ByVal lParam As Long) As LongConst WM_KEYDOWN As Long = &H100
Const VK_TAB As Long = &H9
Dim retVal as longretVal = PostMessage(Me.hwnd, WM_KEYDOWN, VK_TAB, 0)
Private Const VK_TAB = &H9Public Sub KeyNext(ByRef KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
keybd_event VK_TAB, 0, 0, 0
keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
KeyAscii = 0
End If
End Sub
调用:
Private Sub Text1_KeyPress(KeyAscii As Integer)
KeyNext KeyAscii
End Sub