VC精华教程-MFC入门系列(五).docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VC精华教程:MFC入门系列(五)   大家都在催我继续写,我真得很想写快点,不过我写这一篇文章得3-4个小时。我不希望大家看了不懂,或者没学到什么东西。写该系列文章,另一个原因就是想还Vchelp站长闻怡洋和雷神的人情,我在学VC很困难的时候,学习了雷神的文章和教程和闻站长的教程.有了很好的学习效果,在市面上很多的书籍一上来就是向导,很多人就是看不明白而放弃学VC。我希望大家也不要放弃,我又将我的这点烂文章发到网站去了.希望有更多的人来学习VC,也希望大家有什么体会和心得或发现也能够写出来大家共享。   下面我接着上一节的内容来讲,我们已经将工具条和状态条的外观画好,现在要为这个工具条和状态栏加上响应,也就是消息映射和处理函数,我们先将一些无关紧要的消息框去掉。然后添加消息映射:   ON_COMMAND(ID_DISPLAY_UP, up)    ON_COMMAND(ID_DISPLAY_DOWN,down)    ON_COMMAND(ID_DISPLAY_LEFT,left)    ON_COMMAND(ID_DISPLAY_RIGHT,right)   消息映射宏ON_COMMAND接两个参数,第一个是资源ID号,第二个是响应函数的名字。我们要在sample类里面加上这些函数 void up() { ::MessageBox(0,up,消息,MB_OK); } void down() { ::MessageBox(0,down,消息,MB_OK); } void left() { ::MessageBox(0,left,消息,MB_OK); } void right() { ::MessageBox(0,right,消息,MB_OK); }   我们再运行一下程序,我们发现工具条变靓了,因为有了消息映射,所以工具条和菜单都从无效变成有效了。   下面,我们想在状态栏里显示鼠标的坐标。翻译成计算机的语言,也就是说,在鼠标移动的时候,我们获得鼠标的坐标,将这个坐标(整型)转换成字符串,然后,将这个字符串赋值给状态栏的一个窗格。   下面我们来实现它,首现我们要在状态栏添加一个网格,更改代码   UINT stat[]={0,ID_INDICATOR_NUM,ID_INDICATOR_CAPS};   为   UINT stat[]={0,0,ID_INDICATOR_NUM,ID_INDICATOR_CAPS};   再更改,   s.SetIndicators(stat,3);   为   s.SetIndicators(stat,4);   我们就添加了一个窗格,我们还要为鼠标移动添加消息映射,使用MFC定义好的宏ON_WM_MOUSEMOVE(),直接放到消息映射里面就可以了,下面添加消息映射的处理函数void OnMouseMove(UINT nFlags, CPoint point) 通过这个函数我们可以得到两个参数:uFlags和point,这两个参数.我们在MSDN种查到对这两个参数的描述:   nFlags   Indicates whether various virtual keys are down. This parameter can be any combination of the following values:   指示哪些键被按下。这个参数可以是以下值的任意组合:   ? MK_CONTROL Set if the CTRL key is down. //CTRL键   ? MK_LBUTTON Set if the left mouse button is down.//鼠标左键   ? MK_MBUTTON Set if the middle mouse button is down.//鼠标中键   ? MK_RBUTTON Set if the right mouse button is down.//鼠标右键   ? MK_SHIFT Set if the SHIFT key is down. //SHIFT键   point   Specifies the x- and y-coordinate of the cursor. These coordinates are always relative to the upper-left corner of the window.   指示光标的坐标。这个光标是相对于窗体的左上角的。   这是我们要找的参数就是point,那么这个参数是CPoint 类型的,我们再查CPoint 类型,如何查呢?一种查MSDN,另一种在工程中,右键点击CPoint这个文字,出来的右键菜单中,点击goto the definition of

文档评论(0)

中华书局 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档