Windows程序设计课件第五章.ppt_第1页
Windows程序设计课件第五章.ppt_第2页
Windows程序设计课件第五章.ppt_第3页
Windows程序设计课件第五章.ppt_第4页
Windows程序设计课件第五章.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,第五讲Windows界面编程1,主讲:何军 2011-秋季学期,2,Refreshing,窗口程序“Hello World” Windows的消息驱动 Windows的Callback机制,3,4,Outline,在程序中使用资源 程序中的键盘消息与鼠标消息 实例:简单的打字程序 小结,5,1. 在程序中使用资源,6,1.1 什么是资源,资源是与程序相关的有用的数据 菜单、图标、位图、快捷键、字符串表、对话框、光标 . 除此之外,用户还可以自定义资源,7,1.2 如何使用资源,Visual Studio管理资源,8,1.2 如何使用资源,资源ID(唯一标识码) 菜单 图标 游标,9,1.2

2、 如何使用资源,菜单命令 ID 名字,10,1.2 如何使用资源,Win32 API 菜单相关:LoadMenu,SetMenu 图标相关:LoadIcon 游标相关:LoadCursor,11,1.2 如何使用资源,程序如何执行菜单中的命令 菜单中的命令:也是消息 问题:在哪个函数处理菜单中的命令?,12,1.2 如何使用资源,响应菜单中的命令 消息处理函数WndProc WM_COMMAND LOWORD(wParam) 标识哪一条菜单命令被触发 ID_FILE_EXIT,13,2. 键盘消息与鼠标消息,14,2.1 键盘消息,键盘消息 WM_KEYDOWN, WM_SYSKEYDOWN

3、WM_KEYUP, WM_SYSKEYUP,15,2.1 键盘消息,键盘消息 TranslateMessage WM_CHAR,/ Main message loop: while (GetMessage( ,16,2.1 键盘消息,进一步细节 wParam:键的虚拟键码 lParam:该按键的状态,17,2.1 键盘消息,按下A键,观察wParam WM_KEYDOWN:0 x41(A) WM_CHAR:0 x61 (a) WM_KEYUP:0 x41 (A),18,2.2 鼠标消息,19,2.2 鼠标消息,进一步细节lParam 鼠标的位置坐标(x,y) x=LOWORD(lParam)

4、y=HIWORD(lParam),20,2.2 鼠标消息,进一步细节wParam 鼠标的状态 MK_LBUTTON, MK_MBUTTON, MK_RBUTTON, MK_SHIFT, MK_CONTROL if (wParam & MK_CONTROL),21,3. 实例剖析,22,简单的打字程序,具有简单的菜单和自定义的图标 设置简单的字体颜色与背景色 在客户区实时的打印出键盘输入的字符 能够响应鼠标事件,23,24,3.1 使用资源,使用Visual Studio资源编辑器管理资源 菜单、图标、对话框等等 使用Win32 API在程序中引入资源,25,3.2 设置颜色,设置字体颜色 Se

5、tTextColor 设置背景颜色 SetBkColor,26,3.3 打字并输出,问题 在程序的什么地方接收键盘输入? 在程序的什么地方输出键盘的输入?,27,3.3 打字并输出,接收键盘的输入 消息处理的WndProc函数 WM_CHAR 输出键盘的输入 消息处理的WndProc函数 WM_PAINT,28,3.4 鼠标消息处理,问题 在程序的什么地方捕获鼠标消息? 在程序的什么地方输出捕获的鼠标消息?,29,3.4 鼠标消息处理,捕获鼠标消息 消息处理的WndProc函数 WM_LBUTTONDOWN 输出捕获的鼠标消息 消息处理的WndProc函数 WM_PAINT,30,本节课小结,31,重要概念,程序中的资源 键盘事件与消息 鼠标事件与消息 WM_COMMAND消息的处理,32,新的Win32API,资源相关 LoadMenu, SetMenu, LoadCursor, LoadIcon 界面相关 SetWindow

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论