vc 3.ppt


文档分类:管理/人力资源 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11
文档列表 文档介绍
2018/4/5
1
Visual C++程序设计
东北大学
陈东明
2018/4/5
2
第3章输入设备
鼠标
键盘
2018/4/5
3
1、鼠标
1) 鼠标消息
客户区:十种消息,如:WM_MOUSEMOVE
非客户区:通常不要干涉window的默认设置。
十种消息,如:WM_NCMOUSEMOVE
有两个参数:nFlag和point
nFlag包含鼠标按钮和键盘组合使用标志(与shift,ctrl组合)
若想知道某个按钮是否被按下,可用对应的为屏蔽值与nFlags参数作按位逻辑与运算,所得结果为非零值,则表示按钮被按下。
如:if(nFlags & MK_LBUTTON)
AfxMessageBox(“Left Button Pressed!”);
2018/4/5
4
鼠标双击时间间隔默认为500毫秒,可重新设置鼠标双击时间间隔:::SetDoubleClickTime()
窗口要接受双击,则用:
=CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS;
2) 鼠标指针的设置
BeginWaitCursor() 和 EndWaitCursor();
::SetCursor(::LoadCursor(AfxGetInstanceHandle(),IDC_ARROW)):
3) 捕捉鼠标
把鼠标消息集中在一个窗口中。
拖放、拖动选择多项、拖动绘图时必须捕捉鼠标
方法:CWnd::SetCapture( ) (捕捉鼠标)
CWnd::ReleaseCapture( ) (释放鼠标)
2018/4/5
5
2、键盘
与鼠标一样,敲击键盘时也给应用程序发送消息。鼠标消息发送到鼠标所处的窗口,键盘消息发送到有输入焦点的窗口(屏幕上最前面)。
1)键盘消息:
主要有三种:WM_CHAR,WM_KEYDOWN,WM_KEYUP
两种系统专用消息:WM_SYSKEYDOWN,WM_SYSKEYUP
(系统键是Alt+F10)
用户按下或释放一个键时,windows要发送三个主要的键盘消息:
一条WM_KEYDOWN和一条或多条WM_CHAR消息(按键时)
WM_KEYUP消息(释放键时)
按下Alt键,Windows给应用程序发WM_SYSKEYDOWN消息
释放Alt键,发WM_SYSKEYUP消息
2018/4/5
6
按下不代表可打印字符的键,如F1-F12,DEL,箭头键,发送
WM_KEYDOWN消息
释放时,发送WM_KEYUP消息,而不发送WM_CHAR消息
按键的额外消息:包含在wParam和lParam中。
例如:WM_CHAR的MFC类的OnChar( )
void OnChar(UINT nChar, UINT t, UINT nFlags)
nChar: 被击的字符,虚拟键,如:VK_RETURN
t: 键被重击的次数
nFlags:储存在位中更详细信息
虚拟键代码是一种与设备无关的键盘编码,其值存放在wParam
参数中。。
2018/4/5
7
2)字符消息:
击键组合能产生可见字符时,windows还发送字符消息。
windows应用程序内部封装着下列消息循环:
while(GetMessage(&msg,0,NULL,NULL))
{ TranslateMessage(&msg);
DispatchMessage(&msg);
}
当GetMessage()函数获取的消息是WM_KEYDOWN或WM_SYSKEYDOWN,
并且产生可见字符时,TranslateMessage()函数把键盘输入消息转换成相应字
符消息WM_CHAR和WM_SYSCHAR,并将这些字符消息放入应用程序的消
息队列中,它将成为在键盘消息之后,GetMessage()函数从应用程序消息队
列中获取的下一条消息。
2018/4/5
8
Q1、可以向哪些可能的鼠标消息中添加函数?
A1、WM_LBUTTONDOWN,WM _LBUTTONUP,
WM _LBUTTONDBLCLK,WM_RBUTTONDOWN,
WM_RBUTTONUP,WM_RBUTTONDBLCLK,
WM_MOUSEMOVE,WM_MOUSEWHEEL.
Q2、如何在WM_MOUSEMOVE 事件消息中确定鼠标左键是否被按下?
A2、可以用MK_LBUTTON标志掩蔽OnMouseMove函数的标志,如下所示:
((nFlags & MK_LBUTTON) = = MK_LBUTTON)
2018/4/5
9
Q3、当把光标设为另一种形状后,如何避免

vc 3 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ranfand
  • 文件大小191 KB
  • 时间2018-04-05