- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C面向对象程序设计第八章对话框、常用消息、菜单和工具栏
主讲教师: *** 个人主页:*** 教材:《C++面向对象程序设计》 李涛 主编 游洪跃 陈良银 李琳等编 高等教育出版社 2006年2月出版 本书内容 第1章 绪论 第2章 C++类和对象 第3章 继承 第4章 多态性 第5章 模板 第6章 C++常见问题 第7章 Visual C++编程基础 第8章 对话框、常用消息、菜单和工具条 第9章 单文档界面和多文档界面 第10章 图形设备接口 实验 (待安排) 8.1 对话框基本使用 对话框可按其工作模式分为两类: 有模式对话框 :在对话框被关闭之前,用户无法再进行其他工作; 无模式对话框 :在对话框关闭之前,用户可以在应用程序的其他窗口进行工作; 常用控件 按钮控件 常用控件 编辑框控件 常用控件 列表控件 常用控件 列表控件 :列表控件功能强大,它不仅能显示文本,还能显示图像。列表控件一共有4种形式,分别是大图标(Icon)、小图标(small)、列表(List)和报表(report)形式,最常用的类型是以网络列表形式显示报表 8.2 常用消息 在键盘消息中,将按键分成两类: (1)系统键:指输入键与Alt键组合产生的,系统键操作一般由Windows内部处理,而应用程序不须处理。 (2)非系统键:指输入键不与Alt键组合按下的键。 键盘消息的处理 按键消息处理 :当键盘某键按下后又释放,不论该键是否会产生可见字符,都会产生WM_KEYDOWN和WM_KEYUP两个消息。当Widows系统将消息送往应用程序窗口时,通过MFC中的消息映象找到对应的消息处理函数,可在消息处理函数中加入相应的代码,这样便可执行相关的操作。 字符消息处理 :字符消息WM_CHAR只针对那些产生可见字符的键而言的,输入一个可见字符将产生WM_CHAR消息。 鼠标消息及鼠标消息的处理 用户区域鼠标消息 :鼠标指针通过应用程序窗口的用户区域时,Windows系统将发送用户区域鼠标消息到应用程序中。用户区域鼠标消息是用户可以在Windows应用程序中正常处理的信息。当鼠标移动到应用程序窗口的用户区域外面时,应用程序将停止接收用户区域的鼠标消息,而Windows将把鼠标消息发送给鼠标碰巧通过的元素。当鼠标移回到窗口的用户区域时,Windows会重新把鼠标消息发送方向指向应用程序(在应用程序已经捕获了鼠标时例外)。 鼠标消息及鼠标消息的处理 非用户区域鼠标消息 :在Windows中,除了用户区域以外的应用程序窗口部分都为非用户区,Windows将会给应用程序发送非用户区域鼠标消息。例如鼠标通过窗口的标题栏或控制按钮时,应用程序会接收非用户区域鼠标消息。一般应用程序不处理非用户区域鼠标消息,它们可以被Windows系统本身默认地处理。 鼠标消息的处理 :鼠标消息处理与键盘消息处理的方式相同,一般都是用ClassWizard添加消息映象函数,并为函数加入代码 鼠标捕捉 Windows编程需要捕捉所有鼠标消息,并将它们发送到应用程序中。这一行为称为捕捉鼠标。这种编程方法经常被用在鼠标按钮按下或按钮释放消息中。 如果鼠标右键在用户区被按下,而鼠标右键在释放时,鼠标的位置已经不在用户区中了,这时鼠标右键的释放的消息并没有发送到应用程序中,为了使鼠标右键释放的消息也发送到应用程序中,应在鼠标右键在用户区被按下的消息响函数OnRButtonDown()中加上SetCapture()进行鼠标捕捉,应在鼠标右键被释放的消息响函数OnRButtonUp ()中加上ReleaseCapture()释放鼠标捕捉。 8.3 菜单和工具栏 菜单 :通过选择菜单选项,可使应用程序完成与菜单项相关的命令。 工具栏 :工具栏为用户提供了快捷的命令选择方式,一般情况下工具栏的每个按钮对应一个菜单项。用户点击某个按钮,其作用与选取相应菜单选项是相同的。 习题 课后习题、作业 习题1 习题2 测试题 在线测试 习题 1.什么是有模式对话框?什么是无模式对话框?它们的区别是什么? 2.对话框类中的UpdateData()函数的作用是什么? 3.键盘消息分几类?它们是什么消息? 4.鼠标消息分几类?它们是什么消息? 5.为什么要对鼠标进行捕捉? * 主讲教师:四川大学计算机学院 *** 高级语言程序设计II 四川大学精品课程 C++:面向对象程序设计 主编:李涛 高教出版社 ? ? ? ? ? ? 提纲 MFC 编程 第8章 对话框、常用消息、菜单和工具栏 ARM Vector Table FIQ IRQ (Reserved) Data Abort Prefetch Abort S
文档评论(0)