Dim key_state As Integer = 0
成都创新互联公司是一家专业提供成安企业网站建设,专注与成都网站制作、成都网站建设、外贸营销网站建设、H5技术、小程序制作等业务。10年已为成安众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.KeyPreview = True '设置窗体响应键盘操作
End Sub
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
'MsgBox(e.KeyCode) '这行开启可以测试你输入的按键代码
If key_state = 0 Then e.Handled = True '取消操作
Select Case e.KeyCode
Case 49 '按键1
'................操作脚本
Case 50 '按键2
'................操作脚本
End Select
End Sub
Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
e.Handled = True '取消操作
End Sub
'*******************************************************************************另一种方法
AddHandler Me.KeyDown, AddressOf Form1_KeyDown '需要时加入事件
RemoveHandler Me.KeyDown, AddressOf Form1_KeyDown '不需要时删除事件
If e.KeyCode = Keys.A Then
e.Handled = True
End If
你试试,我没有试
这是一个使用SetWindowsHookEx的程序,屏蔽了键盘按键(包括系统按键)。 如果只想屏蔽某个按键,请更改下面的代码。 Form1.Text1 = wParam Form1.Label1 = kk.vkCode ":" kk.scanCode ":" kk.Time 'If wParam = 256 Then Myfunc = 1: Exit Function 'endif wParam 的按键值可以在程序运行中测试中找到。
VB.net可以调用DLL吗?如果可以的话,你用VB6.0编写一个DLL给VB.NET调用就行了
很简单,你怎么不先问我,还在这提问。用api函数,钩子,设置成全局钩子,然后对钩取来的message消息不做处理,也不返回,这样屏蔽了键盘了。钩子函数api好像是什么hook的那个,还有钩子函数的返回函数,以整个自定义函数的指针作参数
Private Sub Form1_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
If sender Is Me Then MsgBox(e.KeyData.ToString vbCrLf sender.ToString)
End Sub
Private Sub Button1_KeyDown(sender As Object, e As KeyEventArgs) Handles Button1.KeyDown
If sender Is Me Then MsgBox(e.KeyData.ToString vbCrLf sender.ToString)
End Sub
这样就行了,第一个过程if语句结果为真,第二个过程if语句结果为假,你的所有问题都可通过if判断语句解决,msgbox代码只是做个测试,实际为你响应form键盘事件的代码。