vb.net热键 vb 热键

vb.net 全局热键见下面的代码
Public Class Form1
Public Declare Auto Function RegisterHotKey Lib "user32.dll" Alias "RegisterHotKey" (ByVal hwnd As IntPtr, ByVal id As Integer, ByVal fsModifiers As Integer, ByVal vk As Integer) As Boolean
Public Declare Auto Function UnRegisterHotKey Lib "user32.dll" Alias "UnregisterHotKey" (ByVal hwnd As IntPtr, ByVal id As Integer) As Boolean
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'注册全局热键
RegisterHotKey(Handle, 0, 0, Keys.F4)
'第3个参数意义: 0=nothing 1 -alt 2-ctrl 3-ctrl alt 4-shift 5-alt shift 6-ctrl shift 7-ctrl shift alt
End Sub
Private Sub Form1_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed
UnRegisterHotKey(Handle, 0)
End Sub
Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = 786 Then
Me.Activate()
End If
MyBase.WndProc(m)
End Sub
End Class
如何用VB.NET设置菜单项的热键不清楚热键和快捷键是什么区别
1.如果你是指Chrl S这样的快捷键 , 可以设置ShortCutKeys属性,属性窗口就有可视化编辑器 。
2.如果你是指"保存(S)",其中s有下划线这样的用Alt 字母来访问的设置,应该在菜单项的Text属性中使用符号 。符号后面的字母将被作为快速访问字符,显示的时候不会被显示出来 , 而字母会自动加上下划线 。比如"保存(s)" 。
3.和选中标记有关的属性有两个
CheckOnClick在菜单项上单击时是否改变Checked属性
Checked设置/获取 菜单项是否被选中
4.设置菜单项的Enabled属性为False
vb.net怎么设置快捷键新建一个Form1把Form1的KeyPreview改成True
拖入一个Button1到Form1上面
然后加入以下代码
Private Sub Form1_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
If e.KeyData = https://www.04ip.com/post/(Keys.Alt Or Keys.G) Then
Button1.PerformClick() '或者用Button1_Click(Nothing, New EventArgs)
'快捷键Alt G触发Button1_Click()事件 。
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Button1.Size = New Size(180, 23)
Button1.Text = "我被局部快捷键给召唤了~"
End Sub
vb.net编写的程序屏蔽系统热键使用VB.net编写屏蔽热键的方法有很多中,比如说使用系统的API函数,也可以使用钩子来进行屏蔽.还有一种就是.net带的一种方法,首先来判断所按下去的键,然后再执行操作等事件.比如说:if (e.keycode==keys.D){e.handle=true}在keydown事件里面处理!这样就可以屏蔽了D键. 实例:if ((Control.ModifierKeys == Keys.Alt)(e.KeyCode == Keys.F4))
{
e.Handled = true;
}还有一种办法就是不通过屏蔽热键来实现,就是通过设置焦点.你可以把你程序窗口设置为主焦点,这样其他程序一般就无法在你的程序前面了.实现屏蔽的作用.至于任务管理器的话可以通过杀掉进程的办法做到.如下:Process[] p = Process.GetProcesses();foreach (Process p1 in p)
{
try
{
if (p1.ProcessName.ToLower().Trim() == "taskmgr")//这里判断是任务管理器
{
p1.Kill();
return;
}
}
catch
{
return;
}
}}以上是使用C#编写的,稍微改下就可以了,在,NET里面都差不多!
【vb.net热键 vb 热键】vb.net热键的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vb 热键、vb.net热键的信息别忘了在本站进行查找喔 。

    推荐阅读