`
isiqi
  • 浏览: 16036589 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

实现快捷键Alt+F12显示/隐藏程序功能

阅读更多

想实现注册类似于ctr+alt+shit+A+Z的方法很简单,将RegisterHotKey的第3个参数设置为KeyModifiers.Alt|KeyModifiers.Control|KeyModifiers.Shift,
第4个参数设置为Keys.B|Keys.Z。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Threading;
namespace rgHotKeys
{
public enum KeyModifiers
{
None = 0,
Alt = 1,
Control = 2,
Shift = 4,
Windows = 8
}
public partial class Form1 : Form
{
[DllImport("user32.dll",SetLastError=true)]
public static extern bool RegisterHotKey(IntPtr hwnd,int id,int fsModifiers,int vk);
[DllImport("user32.dll", SetLastError = true)]
public static extern bool UnregisterHotKey(
IntPtr hWnd, // handle to window
int id // hot key identifier
);
private int id;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
id = Thread.CurrentThread.GetHashCode();
RegisterHotKey(this.Handle, id, (int)KeyModifiers.Alt, (int)Keys.F12);
}
protected override void WndProc(ref Message m)
{
const int WM_HOTKEY = 0x0312;
switch (m.Msg)
{
case WM_HOTKEY:
if(id==(int)m.WParam)
{
System.Windows.Forms.MessageBox.Show ("你好!");
}
break;
}
base.WndProc(ref m);
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
UnregisterHotKey(this.Handle, 10001);
}
}
}

二、

想实现注册类似于ctr+alt+shit+A+Z的方法很简单,将RegisterHotKey的第3个参数设置为KeyModifiers.Alt|KeyModifiers.Control|KeyModifiers.Shift,
第4个参数设置为Keys.B|Keys.Z。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Threading;
namespace rgHotKeys
{
public enum KeyModifiers
{
None = 0,
Alt = 1,
Control = 2,
Shift = 4,
Windows = 8
}
public partial class Form1 : Form
{
[DllImport("user32.dll",SetLastError=true)]
public static extern bool RegisterHotKey(IntPtr hwnd,int id,int fsModifiers,int vk);
[DllImport("user32.dll", SetLastError = true)]
public static extern bool UnregisterHotKey(
IntPtr hWnd, // handle to window
int id // hot key identifier
);
private int id;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
id = Thread.CurrentThread.GetHashCode();
RegisterHotKey(this.Handle, id, (int)KeyModifiers.Alt, (int)Keys.F12);
}
protected override void WndProc(ref Message m)
{
const int WM_HOTKEY = 0x0312;
switch (m.Msg)
{
case WM_HOTKEY:
if(id==(int)m.WParam)
{
System.Windows.Forms.MessageBox.Show ("你好!");
}
break;
}
base.WndProc(ref m);
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
UnregisterHotKey(this.Handle, 10001);
}
}
}

分享到:
评论

相关推荐

    微信开发者工具快捷键整理.txt

    操作 命令 打开快捷键面板 F1 打开/关闭工具栏 Ctrl+Shift+T 打开/关闭模拟器 Ctrl+Shift+D 打开/关闭调试器 Ctrl+Shift+M 格式化文件 Shift+Alt+F ...切换行注释 Ctrl+/ 打开/关闭编辑器 Ctrl+Shift+E

    IDEA快捷键.docx

    Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ ) Ctrl+J 自动代码 Ctrl+E 最近打开的文件 Ctrl+H 显示类结构图 Ctrl+Q 显示注释文档 Alt+F1 查找代码所在位置 Alt+1 快速打开或隐藏工程面板 ...

    个人总结最实用idea快捷键[干货]

    目录导航功能查找功能窗口操作代码编辑代码重构 导航功能 功能 快捷键 使用场景 万能导航 shift+shift 定位某行 ctrl+G 导航后退/前进 ctrl+alt+left/ctrl+alt+rigth 回到最后一次编辑点 ctrl+shift...

    vc6.0快捷键总结

    共总结vc常使用的205个快捷键 Ctrl+Shift+F2 清除窗口中的所有书签 F2 移动到包含下一个书签的行 Shift+F2 移动到包含前一个书签的行 Ctrl+F2 切换当前行书签开关 Alt+F2 编辑或定位书签 F12 显示一个符号...

    uninstall是安卓开发的一部分代码

    功能描述 keymap对应名字 Mac Win/Linux 提示错误解决方案 Show Intention Actions option + enter alt + enter AS配置界面 Preferences command + , control+alt+S 工程项目配置界面 Project Structure command ...

    eclipse快捷键大全

    全局 内容辅助 Alt+/ 全局 全部选中 Ctrl+A 全局 删除 Delete 全局 上下文信息 Alt+?Alt+Shift+?Ctrl+Shift+Space Java编辑器 显示工具提示描述 F2 Java编辑器 选择封装元素 Alt+Shift+↑ Java编辑器 选择上一个...

    python运行命令快捷键-Pycharm快捷键python基础教程python入门pyt .pdf

    Shift + F10 Run 选择运⾏⽅式 Ctrl + Shift + Alt + A ⾏注释 Ctrl + Alt + F12 打开⼯程的路径 Ctrl + Shift + C 复制当前⽂件的路径 Ctrl + PageUp/PageDown 切换标签 Ctrl + E 最近⼯作的⽂件 Ctrl + Space 代码...

    IntelliJ IDEA快捷键.xls

    IntelliJ IDEA快捷键,个人整理的spring boot...Ctrl+F12 可以显示当前文件的结构 Ctrl+F7 可以查询当前元素在当前文件中的引用 Ctrl+N 可以快速打开类 Ctrl+Shift+N 可以快速打开文件 Alt+Q 可以看到当前方法的声明

    电脑快捷键

    Ctrl快捷键 Ctrl+S 保存 Ctrl+W 关闭程序 Ctrl+N 新建 Ctrl+O 打开 Ctrl+Z 撤销 Ctrl+F 查找 Ctrl+X 剪切 Ctrl+C 复制 Ctrl+V 粘贴 Ctrl+A 全选 Ctrl+[ 缩小文字 Ctrl+] 放大文字 Ctrl+B 粗体 Ctrl+I ...

    vs2010 快捷键大全

     CTRL + SHIFT + C显示类视图窗口  F4 显示属性窗口  SHIFT + F4显示项目属性窗口  CTRL + SHIFT + E显示资源视图  F12 转到定义  CTRL + F12转到声明  CTRL + ALT + J对象浏览  CTRL + ALT + F1帮助目录  ...

    MAYA快捷键

    d 设置显示质量(弹出式标记菜单) 快捷键 功能解释 1 低质量显示 ] 重做视图的改变 2 中等质量显示 [ 撤消视图的改变 3 高质量显示 Alt s 旋转手柄附着状态 翻越层级 文件管理 快捷键 功能解释 快捷键 功能解释 ...

    计算机基础快捷键.docx

    win7系统 快捷键名称 功能 快捷键名称 功能 Win+E 打开"我的电脑" Win或Ctrl+Esc 开始菜单 Ctrl+Alt+Del 进入命令状态 Win+D 最小化所有窗口,显示桌面 Alt+Esc 在没有被最小化窗口间切换 Alt+Tab 所有窗口间切换 ...

    IntelliJ快捷键.pdf

    Ctrl+F12,可以显示当前文件的结构 Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择 Ctrl+N,可以快速打开类 Ctrl+Shift+N,可以快速打开文件 Alt+Q,可以看到当前方法的声明 Ctrl+P,可以显示...

    VS2005快捷键.txt

    Shift+Alt+Enter: 切换全屏编辑 Ctrl+BT / Ctrl+KK: 切换书签开关 Ctrl+BN / Ctrl+KN: 移动到下一书签 Ctrl+BP: 移动到上一书签 Ctrl+BC: 清除全部标签 Ctrl+I: 渐进式搜索 ...Alt+F12: 查找符号(列出所有查找结果)

    使用Photoshop自动批量处理文件夹中的所有文件

    首先直接在ps打开一张图片,然后使用快捷键alt+F9,跳出命令设置。这里我们设置Shift+F12快捷键记录接下来的动作,这样下次我们就可以直接按这个快捷键 点击记录按钮后,接下来都是记录的内容 比如先操作ctrl+j...

    TCEEv3.00_7.50a

    Total Commander 7.50 ... ~ 取消快捷键ALT+F12 运行Total Commander ~ 打开控制面板快捷键修改为Win+S(原为CTRL+S) + 配置文件支持1920x1200内常用分辨率 ~ 增加FAQ: 为什么不做成绿色版压缩文件?

    自己整理的excel快捷键大全

    自己整理的excel快捷键大全,ctrl+P或CTRL+SHIFT+F12 显示“打印”对话框。 CTRL+向上键或+向左键(打印预览) 缩小显示时,滚动到第一页 CTRL+向下键或+向右键(打印预览) 缩小显示时,滚动到最后一页 SHIFT+F11...

    飞奔浏览器 v1.0

    CTRL+B 在标签栏的最前新建一空白页为第一个标签CTRL+T 关闭当前活动页面CTRL+ALT+W 刷新全部页面CTRL+Q 查看后一页面CTRL+E 锁定当前标签防止其被误关CTRL+U 自动/取消自动刷新网页F12 解锁网页的鼠标左右键Ctrl+...

    vc常用快捷键

    1. F12:转到定义;Shift+F12:转到引用   2. F5:启动;Ctrl+F5:开始执行(不调试);Shift+F5:停止调试   3. F7:查看代码;Shift+F7:查看视图设计器   4. Ctrl+Alt+L:解决方案资源管理器   5. ...

    Delphi2010资源,delphi2010快捷键

    给你个比较常用的delphi 快捷键列表,能提升工作效率 其实这些东西在ide的设置里都能看到。。。 CTRL+SPACE 代码补全,很好用的(先改了输入法热键) CTRL+SHIFT+C 编写申明或者补上函数 CTRL+SHIFT+↑(↓) 在过程...

Global site tag (gtag.js) - Google Analytics