您的位置:首页 > 其它

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...

Ø ⊆ {Ø} 是否是对的 ,这么...

给主人留下些什么吧!~~

评论热议
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: