windows客户端开发--使用、屏蔽一些快捷键
2016-03-15 22:55
274 查看
每个windows客户端都有自己的一些快捷键,有的是windows系统提供的。
今天就要与大家分享一下,在windows客户端开发过程中对按键的处理。
ESC按键
Duilib这个库中,如果不做特殊处理的话,按下ESC会退出程序。这不是我们期望的,我们可以在我们的客户端中屏蔽esc,而微信windows客户端是把ESC按键作为最小化到托盘处理。
我们也这样处理:
Shift+Enter
在输入框中,回车一般是发送消息,而通常采用shift+enter的组合键来完成换行。微信windows客户端也是这么做的:
::GetKeyState(VK_SHIFT) > 0 没按下
::GetKeyState(VK_SHIFT) < 0被按下
返回值给出了给定虚拟键的状态,状态如下:
若高序位为1,则键处于DOWN状态,否则为UP状态。
今天就要与大家分享一下,在windows客户端开发过程中对按键的处理。
ESC按键
Duilib这个库中,如果不做特殊处理的话,按下ESC会退出程序。这不是我们期望的,我们可以在我们的客户端中屏蔽esc,而微信windows客户端是把ESC按键作为最小化到托盘处理。
我们也这样处理:
if (uMsg == WM_KEYDOWN ) { if (wParam == VK_ESCAPE) { ShowWindow(false); return 0; } }
Shift+Enter
在输入框中,回车一般是发送消息,而通常采用shift+enter的组合键来完成换行。微信windows客户端也是这么做的:
else if (uMsg == WM_KEYDOWN ) { if (wParam == VK_RETURN) { if (::GetKeyState(VK_SHIFT) < 0) { //输入文本中加入\n return 0; } else { //发送 return 0; } } }
::GetKeyState(VK_SHIFT) > 0 没按下
::GetKeyState(VK_SHIFT) < 0被按下
返回值给出了给定虚拟键的状态,状态如下:
若高序位为1,则键处于DOWN状态,否则为UP状态。
相关文章推荐
- DP(2)
- Otsu算法在C/C++上的实现(从图片读取到像素值计算以及图片写回)
- 文件操作二:基于C++语言的文件操作
- Android开发之Activity四种启动模式的介绍
- windows客户端开发--使用、屏蔽一些快捷键
- 电话录音机实现
- android Handler详细使用方法实例
- hihoCoder题目AC #1040 : 矩形判断 Java
- 监听turtlesim仿真器,发送数据到实际的机器人--20
- JAVA API 被坑备忘录
- 求后缀表达式的值
- Install Ganglia on Ubuntu 14.04 Server (Trusty Tahr)
- 算导--7.4-5改进的快排
- 原来border还可以这样用
- VK Cup 2016 - Qualification Round 1——B. Chat Order(试手stack+map)
- ajax异步请求详解
- WCF入门教程——宿主(三)
- Hadoop集群搭建笔记
- hdu 1532 最大流入门题
- 《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题