windows程序设计:键盘和鼠标
2014-02-12 17:46
369 查看
键盘
1.键盘消息分为击键和字符。
2.系统击键和非系统击键。
WM_KEYDOWN WM_KEYUP
WM_SYSKEYDOWN WM_SYSKEYUP
3.虚拟键码保存在WM_KEYDOWN WM_KEYUP WM_SYSKEYDOWN WM_SYSKEYUP消息的wParam参数中。为了实现与设备无关。
case WM_KEYDOWN:
switch(wParam)
{
case VK_HOME:
.....
}
4.lParam的32位分为6个域:重复计数,OEM扫描码,扩展键标志,环境代码,键的先前状态,转换状态。
5.插入符:
CreateCaret 创建与窗口有关的插入符
SetCaretPos 在窗口中设置插入符的位置
ShowCaret 显示插入符
HideCaret 隐藏
DestroyCaret 撤销
鼠标
1.查看鼠标是否存在:fMouse = GetSystemMetrics(SM_MOUSEPRESENT);
确定所安装鼠标的个数:cButton = GetSystemMetrics(SM_CMOUSEBUTTONS);
2.当定义窗口类结构时指定特定窗口的默认光标:wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);
3.客户区鼠标消息:
按下 释放 双击键
左 WM_LBUTTONDOWN WM_LBUTTONUP WM_LBUTTONDBLCLK
中 WM_MBUTTONDOWN WM_MBUTTONUP WM_MBUTTONDBLCLK
右 WM_RBUTTONDOWN WM_RBUTTONUP WM_RBUTTONDBLCLK
lParam 值含有鼠标的位置
x = LOWORD(lParam);
y = HIWORD(lParam);
4.wParam 和 MK_LBUTTON进行按位与,来确定是否按下了左键。
5.非客户区鼠标消息
按下 释放 双击键
左 WM_NCLBUTTONDOWN WM_NCLBUTTONUP WM_NCLBUTTONDBLCLK
中 WM_NCMBUTTONDOWN WM_NCMBUTTONUP WM_NCMBUTTONDBLCLK
右 WM_NCRBUTTONDOWN WM_NCRBUTTONUP WM_NCRBUTTONDBLCLK
lParam参数包含低位字的x坐标和高位字的y坐标,但是是屏幕坐标。可用下面函数转化:
ScreenToClient(hwnd, &pt);
ClientToScreen(hwnd, &ps);
阅读(61) | 评论(0) | 转发(0) |
0
上一篇:windows程序设计:键盘和鼠标
下一篇:windows程序设计:位图和bitblt
相关热门文章
用Wrod功能实现任意纵横...
【Windows核心编程学习笔记】H...
MSVC vs. MinGW 之 (lib,dll,d...
windows下goagent图文设置教程...
如何使用hadoop运行自定义的ma...
LNK1123: 转换到 COFF 期间失...
VISIO,不规则封闭图形填充方...
Delphi 2010下载+完美破解...
[转载]win7如何多用户登录(远...
Windows XP系统如何设置无线网...
一个简单的shell脚本问题...
网站如何做图片的防盗链功能呢...
如何将printf输出的字符(含有...
嵌入式linux wifi移植 libert...
Ø ⊆ {Ø} 是否是对的 ,这么...
给主人留下些什么吧!~~
评论热议
1.键盘消息分为击键和字符。
2.系统击键和非系统击键。
WM_KEYDOWN WM_KEYUP
WM_SYSKEYDOWN WM_SYSKEYUP
3.虚拟键码保存在WM_KEYDOWN WM_KEYUP WM_SYSKEYDOWN WM_SYSKEYUP消息的wParam参数中。为了实现与设备无关。
case WM_KEYDOWN:
switch(wParam)
{
case VK_HOME:
.....
}
4.lParam的32位分为6个域:重复计数,OEM扫描码,扩展键标志,环境代码,键的先前状态,转换状态。
5.插入符:
CreateCaret 创建与窗口有关的插入符
SetCaretPos 在窗口中设置插入符的位置
ShowCaret 显示插入符
HideCaret 隐藏
DestroyCaret 撤销
鼠标
1.查看鼠标是否存在:fMouse = GetSystemMetrics(SM_MOUSEPRESENT);
确定所安装鼠标的个数:cButton = GetSystemMetrics(SM_CMOUSEBUTTONS);
2.当定义窗口类结构时指定特定窗口的默认光标:wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);
3.客户区鼠标消息:
按下 释放 双击键
左 WM_LBUTTONDOWN WM_LBUTTONUP WM_LBUTTONDBLCLK
中 WM_MBUTTONDOWN WM_MBUTTONUP WM_MBUTTONDBLCLK
右 WM_RBUTTONDOWN WM_RBUTTONUP WM_RBUTTONDBLCLK
lParam 值含有鼠标的位置
x = LOWORD(lParam);
y = HIWORD(lParam);
4.wParam 和 MK_LBUTTON进行按位与,来确定是否按下了左键。
5.非客户区鼠标消息
按下 释放 双击键
左 WM_NCLBUTTONDOWN WM_NCLBUTTONUP WM_NCLBUTTONDBLCLK
中 WM_NCMBUTTONDOWN WM_NCMBUTTONUP WM_NCMBUTTONDBLCLK
右 WM_NCRBUTTONDOWN WM_NCRBUTTONUP WM_NCRBUTTONDBLCLK
lParam参数包含低位字的x坐标和高位字的y坐标,但是是屏幕坐标。可用下面函数转化:
ScreenToClient(hwnd, &pt);
ClientToScreen(hwnd, &ps);
阅读(61) | 评论(0) | 转发(0) |
0
上一篇:windows程序设计:键盘和鼠标
下一篇:windows程序设计:位图和bitblt
相关热门文章
用Wrod功能实现任意纵横...
【Windows核心编程学习笔记】H...
MSVC vs. MinGW 之 (lib,dll,d...
windows下goagent图文设置教程...
如何使用hadoop运行自定义的ma...
LNK1123: 转换到 COFF 期间失...
VISIO,不规则封闭图形填充方...
Delphi 2010下载+完美破解...
[转载]win7如何多用户登录(远...
Windows XP系统如何设置无线网...
一个简单的shell脚本问题...
网站如何做图片的防盗链功能呢...
如何将printf输出的字符(含有...
嵌入式linux wifi移植 libert...
Ø ⊆ {Ø} 是否是对的 ,这么...
给主人留下些什么吧!~~
评论热议
相关文章推荐
- windows程序设计之鼠标,键盘,绘制文本简介
- windows程序设计之鼠标,键盘,绘制文本简介
- Windows程序设计之键盘和鼠标
- windows程序设计:键盘和鼠标
- windows程序设计,第七章鼠标,用子窗口做击中测试,模拟键盘
- windows程序设计学习笔记-键盘,鼠标,计时器
- MFC Windows 程序设计 第三章 鼠标与键盘
- Windows 8/8.1 下,键盘长按键后,鼠标左键短暂失灵问题
- windows程序设计之鼠标之子窗口
- Windows中如何获取键盘和鼠标处于空闲状态的时间
- windows判断用户是否在使用键盘鼠标的API
- synergy在Windows和ubuntu 多台PC共享一套键盘鼠标
- windows的鼠标、键盘消息(阅windows核心编程笔记)
- Windows应用程序对键盘与鼠标的响应
- Windows 7冷落鼠标键盘 支持语音和触摸技术
- [python]windows下模拟鼠标点击和键盘输入
- windows下python模拟鼠标点击和键盘输示例
- MacBook Pro 2017 13寸版 触摸板windows驱动开发(开发HID鼠标键盘驱动之一)
- synergy在Windows和Linux下使用全攻略(多台PC共享一套键盘鼠标)
- 在windows下模拟鼠标键盘输入的几种方法 (附带源代码)