网站大量收购独家精品文档,联系QQ:2885784924

VC 第3章 Winws编程与MFC.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VC 第3章 Winws编程与MFC

第3章Windows编程与MFC 3.5.2标准的Windows消息 所有以WM_为前缀的消息(WM_COMMAND消息除外)都是标准的Windows消息,包括键盘消息、鼠标消息和窗口消息。他们一般由窗口对象和视图对象进行处理。窗口对象指的是从CWnd类中派生出的类的对象,如从CWnd、CFrameWnd、CMDIFrameWnd、CMDIChildWnd、Cview和Cdialog等MFC类或这些类的派生类中定义的对象。 第3章Windows编程与MFC 1、键盘消息 在程序运行过程中,当用户对键盘进行操作时,会产生对应的消息,系统将把此消息发送给对应的窗口。 如当键盘的某个键被按下时将产生WM_CHAR消息,这个消息带有字符代码值、重复赤松和先前状态码3个参数。WM_CHAR消息的处理函数为OnChar(),此函数的原型为: afx_msg void onChar(UINT nChar,UINT nRepCnt,UINT nFlags); 其中:nChar是所按键的字符代码值。 nRepCnt是重复的次数,它表示用户按键时重复击键的次数。 nFlags表示扫描码、先前键状态和键转换状态等,其参数值如图 位 含义 0~15 指明键重复按下的次数 16~23 指定扫描码 24 如果同时按下扩展键(Alt),则为1,反之为0 25~28 由Windows内部使用 … … 第3章Windows编程与MFC 键盘消息的类型有以下几种: 1、WM_KEYDOWN:表示某一键被按下。 2、WM_KEYUP:表示某一键弹起。 3、WM_CHAR:表示某一键被按下且弹起,输入了一个字符。 与这些消息相应的消息处理函数的原型分别为: afx_msg void OnKeyDown(UINT nChar,UINT nRepCnt,UINT nFlags); afx_msg void OnKeyUp(UINT nChar,UINT nRepCnt,UINT nFlags); afx_msg void onChar(UINT nChar,UINT nRepCnt,UINT nFlags); 第3章Windows编程与MFC 2、鼠标消息 在Windows中处理鼠标操作的方法基本上有以下3种: (1)单击(Click):表示按一下鼠标 的左键或右键,然后释放。 (2)双击(Double Click):表示快速连续按两下鼠标左键。 (3)拖动(Drag):指按住鼠标的按键后,再移动鼠标。 消息类型: WM_MOUSEMOVE:鼠标移动 WM_LBUTTONDOWN:按下鼠标左键 WM_MBUTTONDOWN:按下鼠标中间键 WM_RBUTTONDOWN:按下数百右键 …… 所有这些鼠标消息的处理函数都有相似的原型,且都有两个参数。 如:处理鼠标左键按下的消息函数OnLButtonDown(): Afx_msg void OnLbuttonDown (UINT nFlags,Cpoint point); Point 是鼠标事件发生时光标的位置,nFlags表示某些键的状态。 第3章Windows编程与MFC 3、控件消息 控件是一个小的子窗口,它隶属于其他窗口(如对话框等),能接受操作并向父窗口发送消息。常见的控件有按钮、列表框、编辑框、符合框和滚动条等。 控件消息分为两类: (1)从控件传给消息,通常这类消息的前缀的最后一个字符 为N。 (2)由系统发送给控件的消息,这类消息的前缀的最后一个 字符为M。 与其他标准的Windows消息一样,空间消息也是由窗口对象和视图对象对其进行处理的。 第3章Windows编程与MFC 4、命令消息 命令消息主要包括由用户界面对象发送的WM_COMMAND消息,用户界面对象是指菜单、工具栏和快捷键等。它和控件消息的区别在于:控件消息只能由特定控件向Windows系统传送,而命令消息是由用户界面发送的,它可以被更多的对象处理。在文档对象、视图对象、窗口对象以及空间对象中都能处理这种消息。 第3章Windows编程与MFC 3.6消息的发送和接收的基本过程和机制 应用程序进行了初始化后就会调用CWinApp的成员函数Run()开始每人的消息循环。Run()函数的工作就是得到并发送Windows消息直到收到WM_QUIT消息。Run()函数首先调用PreTranslateMessage()成员函数进行某些特殊处理,之后调用Windows函数TranslateMessage做标准键盘翻译,最后是DispatchMessage()分发消息,并将消息发送到适当的窗口。 第3章Windows编程与MFC 3.

文档评论(0)

seunk + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档