请问怎样为程序添加系统快捷键呀?

问题描述

只要程序运行,不管是否激活这个程序,都可以使快捷键响应!

解决方案

解决方案二:
我也想知道
解决方案三:
虽然只有5分,看一下下面的代码吧。ImportsSystem.Windows.FormsPublicEnumKeyModifiersNone=0Alt=1Control=2Shift=4Windows=8EndEnum'''<summary>'''支持系统热键呼叫'''</summary>'''<remarks></remarks>publicClassHotKeysInheritsNativeWindowImplementsIDisposablePrivateConstWM_HOTKEY=&H312PrivateDeclareFunctionRegisterHotKeyLib"user32.dll"(ByValhwndAsInt32,ByValidAsInt32,ByValfsModifiersAsInt32,ByValvkAsInt32)AsInt32PrivateDeclareFunctionUnregisterHotKeyLib"user32.dll"(ByValhwndAsInt32,ByValidAsInt32)AsInt32'''<summary>'''返回下一个可用ID号'''</summary>'''<returns></returns>'''<remarks></remarks>PrivateSharedFunctionNextID()AsInt32StaticidAsInteger=0id+=1ReturnidEndFunctionPrivatemIdAsIntegerPrivatemModifiersAsInt32PrivatemKeyAsIntegerPublicSubNew(ByValmodifersAsKeyModifiers,ByValkeyAsKeys)mModifiers=modifersmKey=keyEndSub'''<summary>'''表示热键被按下'''</summary>'''<remarks></remarks>PublicEventHotKeyDowAsEventHandler'''<summary>'''注册热键'''</summary>'''<returns></returns>'''<remarks></remarks>PublicFunctionRegister()AsBooleanIf(mId<>0)ThenUnRegister()EndIfIf(Me.Handle=IntPtr.Zero)ThenDimcpAsCreateParamscp=NewCreateParams()Me.CreateHandle(cp)EndIfmId=NextID()ReturnRegisterHotKey(Me.Handle,mId,Me.mModifiers,Me.mKey)EndFunction'''<summary>'''注销热键'''</summary>'''<returns></returns>'''<remarks></remarks>PublicFunctionUnRegister()AsBooleanIf(mId<>0)ThenmId=0Me.DestroyHandle()ReturnUnregisterHotKey(Handle,mId)EndIfReturnFalseEndFunction'''<summary>'''处理windows消息'''</summary>'''<paramname="m"></param>'''<remarks></remarks>ProtectedOverridesSubWndProc(ByRefmAsSystem.Windows.Forms.Message)If(m.Msg=WM_HOTKEY)ThenIf(m.WParam=mId)ThenRaiseEventHotKeyDow(Me,EventArgs.Empty)EndIfEndIfMyBase.WndProc(m)EndSubPublicSubDispose()ImplementsIDisposable.DisposeUnRegister()EndSubEndClass

'使用方式如下PrivateWithEventsmHotKeyAsNewHotKeys(KeyModifiers.Control,Keys.W)'注册系统热键mHotKey.Register()'注销系统热键mHotKey.UnRegister()'处理mHotKey的事件'HotKeyDow'可以监测热键在什么时候按下。

时间: 2024-11-01 23:15:00

请问怎样为程序添加系统快捷键呀?的相关文章

请问在用程序给系统自动添加用户的时候,将已添加的用户划分到administrators组中需要调用哪个函数?

问题描述 如题,谢谢:) 解决方案 解决方案二:标记,同楼主一起等答案解决方案三:倒...谢谢帮顶哈,我还以为得到答案了呢,呵呵

为程序添加系统上下文菜单

using System; using System.Diagnostics; using Microsoft.Win32; namespace SimpleContextMenu { /// <summary> /// 在注册表中注册和注销文件上下文菜单. /// </summary> static class FileShellExtension { /// <summary> /// 注册上下文菜单 /// </summary> /// <par

Win7旗舰版系统快速将便签等应用程序添加到右键菜单的技巧

  1.首先按"Win+r"组合快捷键打开"运行"窗口,输入regedit,回车打开注册表编辑器; 2.在打开的注册表编辑器中,依次展开定位到HKEY_CLASSES_ROOTDirectoryBackgroundshell,在shell下鼠标右击选择新建"项",例如记事本"NotePad"."QQ".截图工具"SnippingTool"; 3.随后在以上的项目中继续新建子"项

Wix打包系列(七) 添加系统必备组件的安装程序

原文:Wix打包系列(七) 添加系统必备组件的安装程序     我们知道在vs的打包工程中添加系统必备组件是一件很容易的事情,那么在wix中如何检测系统必备组件并在安装过程中安装这些组件.这里以.Net Framework组件作为必备组件为例:         7.1 检测.Net Framework 版本         步骤1:为安装项目添加WiX .NET extensions库的引用     如果是命令行方式使用wix,那么需要在candle和light的时候添加如下参数: -ext W

如何将常用程序添加到win8电脑的右键菜单中?

  要说鼠标上的按钮,也就是左键和右键,哪个更加常用到?这个问题还真不好回复,因为左键表示确定,这个功能自然是经常使用到的,但是右键也有操纵右键菜单的功能,这也是咱们Windows系统中经常需要使用到的一个功能.今天,小编要介绍的Windows系统的操作技巧,便是与咱们Windows系统的右键菜单有关的,下面咱们就详细的来介绍一下,如何将自己常使用到的功能添加到win8系统的右键菜单中. 1.首先,咱们需要返回到win8系统的传统桌面位置,之后,咱们同时按下win8电脑键盘上的win+R快捷键打

Mac系统快捷键大全

  苹果Mac系统常用快捷键: Command+Tab 任意情况下切换应用程序 - 向前循环 Shift+Command+Tab 切换应用程序 - 向后循环 Command+Delete 把选中的资源移到废纸篓 Shift+Command+Delete 清倒废纸篓(有确认) Shift+Option+Command+Delete 直接清倒废纸篓 Command+~ 同一应用程序多窗口间切换 Command+F 呼出大部分应用程序的查询功能 Command+C/V/X 复制/粘贴/剪切 Comma

如何用C#程序获得系统最新产生的日志?

问题描述 如何用C#程序获得系统最新产生的日志? 解决方案 解决方案二:范围也太宽了吧解决方案三:那就如何获取某个程序最新的错误日志!解决方案四:想要获得事件查看器中的内容?解决方案五:是的,要根据日期来获取的,请问如何解决?解决方案六:自己写日志,还是系统日志?自己写日志的话,好像有个log4net的可以用,系统日志的话,这个要网上搜搜了~解决方案七:调用系统的错误日志,我是要做个监测程序,程序一出错就可以马上得知!解决方案八:可以试一下EventLog.EntryWritten事件若要获取事

为您的Java应用程序添加退出事件处理

程序 一个完整的Java应用程序,通常至少要有一个应用程序的结束点.对于一般程序来说,系统开发者根据需要和个人的偏好,会在程序结束位置,通过添加System.exit(0),或System.out(-1),来结束程序,或不加这些指令,让程序自然运行到结束. 如:下列典型代码 package untitled14;/** * This application is to demo how an applcation end */public class Test { public Test() {

为Java应用程序添加退出事件响应

一个完整的Java应用程序,通常至少要有一个应用程序的结束点.对于一般程序来说,系统开发者根据需要和个人的偏好,会在程序结束位置,通过添加System.exit(0),或System.out(-1),来结束程序,或不加这些指令,让程序自然运行到结束. 如:下列典型代码 package untitled14; /** * This application is to demo how an applcation end */ public class Test { public Test() {}