- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VisualC轻松入门_第13章Windows基本输入
第13章 Windows的基本输入 Windows的输入有多种,如键盘输入、鼠标输入、扫描仪输入和摄像机输入等。其中最基本和最常用的就是键盘输入和鼠标输入。本章将讲解这两种最基本的输入方式,并详细讲解消息处理机制的理论本质,本章主要修行的要点如下。 键盘和鼠标消息理论基础:了解Windows的基本输入,即键盘和鼠标的输入,以及消息传递的基本原理,为进一步深入理解Windows消息内核打下基础。 键盘和鼠标的消息处理函数分析:理解键盘和鼠标消息处理函数的原型和各参数代表的意义,学会自定义消息处理函数。 消息处理实例的创建和使用:学会使用Visual C++进行键盘和鼠标消息处理函数的添加、删除和修改,并学会独立编写使用键盘或鼠标操作响应的软件。 13.1 键盘消息及其处理 没有哪个软件在使用过程中不用键盘操作的,或者说不允许键盘操作,除非刻意做出这样奇怪的软件。键盘是计算机的“元老级”计算机配件,早在鼠标出世的n年前,键盘已经被各位计算机科学家频繁使用在实验室中。 13.1.1 巧妇难为无米之炊:没有键盘怎么行? 曾有朋友问过我,是鼠标重要还是键盘重要?不能都选,也不能都不选。这着实让我愣了一下,还没等我想出答案,他已经告诉我肯定是键盘重要,原因是,有键盘就能安装Windows操作系统,而单有鼠标的话就不能。虽然是一个笑话,不过也反映了键盘的历史比鼠标久远得多,在以前只有大型计算机的时代,别说纸带机之类“远古时代”了,就以前基本只有Fortran语言进行数学计算也是只用键盘就可以了,操作人员也没有想过以后会有鼠标,更没有奢望过有多媒体、3D网络游戏等。 计算机的很多古老配件在今天已经看不到了,如软盘、磁带盘等,它们消亡的原因在于有更好的替代品,如VCD、DVD或大容量U盘、移动硬盘等。键盘作为一种基本的输入设备,也出现过一些替代品,如鼠标,但鼠标主要用于定位和选取,打字功能也很弱,后来人们也发明了一种“手写板”,目的在于方便不会打字的人使用,但“手写板”非但没有流行起来,相反,原来不会打字用手写板的人全部都变成使用键盘的打字高手了,因为要使用“手写板”效率太低了,还不如先学会打字,结果“手写板”作为新产品反而遭到PC配件市场的淘汰,只有在购书中心等地方用于客户查询时才使用。 综合上面所述,很难想象没有键盘的日子是怎么过的,当然,这不用担心,这个事情不会发生,至少在能遇见的将来,我们还是可以使用键盘,直到出现的确比键盘更方便快捷的输入工具,而非攀比新技术。 13.1.2 键盘消息处理函数 在前文中,我们多次使用到了消息函数。在MFC中,添加一个键盘消息函数,则应该修改3个地方。 (1)消息函数的声明:在头文件(*.h)的类定义体中。 (2)消息映射表注册:在源文件(*.cpp)的消息映射表中。 (3)消息函数的实现:在源文件(*.cpp)的类实现中。 键盘消息函数一般有两种。 OnKeyDown():键盘按键按下时的消息处理函数。 OnKeyUp():键盘按键按下后,弹起时的消息处理函数。 当然,从函数名也可以知道这两个函数分别用于处理键盘按钮按下和键盘按钮弹起时的消息。以OnKeyDown()函数为例,做出以下对键盘消息处理函数的分析,函数原型如下: afx_msg void OnKeyDown( UINT nChar, UINT nRepCnt, UINT nFlags ); // 消息处理函数声明 13.1.3 实例-键盘消息处理 【本节示例参考:\源代码\C13\KeyBoard】 键盘消息处理实例编写相对比较简单,本节的实例将创建MFC应用程序,并在该程序上开发键盘消息的功能,使用户在按下键盘按键时,程序做出相应的信息提示,如用户按下“F1”键,应用程序将提示“按下F1键!”的提示信息,具体步骤如下: 13.2 鼠标消息及其处理 前文将键盘和鼠标进行了重要性的比较,虽然说两者择其一来看,键盘相对比较重要,但如果没有鼠标,很难想象现在的计算机或互联网能普及。本节将讲解鼠标消息函数的添加和使用。 13.2.1 没有鼠标将永远DOS 设想一下,没有鼠标会怎么样? (1)光标移动非常困难,使用方向键浪费了工作人员95%的时间和精力,而这些时间和精力仅仅就是为了将光标移动到自己需要按下“Enter”键的地方。 (2)没有鼠标,或许永远只能这样:输入-确定-再输入-再确定……。这个或许是很多DOS老手感到亲切,也同时是这些DOS老手感到有点“心有余悸”的操作方式,毕竟使用Windows那么久了,再一夜回到解放前,大家都不希望这样。 (3)如果没有鼠标,恐怕最大意见的就是现在的计算机游戏玩家了,如果读者就是一个游戏玩家,把你的鼠标拿走,你还能玩什么游戏呢? 可见,没有鼠标的计算机操作、工作和娱乐都是非常不方便的,开发Wi
文档评论(0)