- 1、本文档共135页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
W的indows窗口高级编程-第五讲
第五节:托盘图标的实现 托盘图标的添加与移除 综合例子的计算器最小化时,会在任务栏右侧显示一个托盘图标,右键托盘图标还会显示一个菜单出来。为此我们定义一下托盘图标数据结构体跟相应的菜单句柄。包含ShellAPI.h文件,并添加如下代码: * 第五节:托盘图标的实现 托盘图标的添加与移除 在主窗口的WM_CRATE消息响应代码中初始化这个结构体并创建菜单。 * 第五节:托盘图标的实现 托盘图标的添加与移除 当主窗口最小化时显示托盘图标并隐藏窗口。 * 第五节:托盘图标的实现 托盘图标的添加与移除 当单击托盘图标时,显示主窗口,去除托盘图标。 * 第五节:托盘图标的实现 托盘图标的添加与移除 在主窗口销毁后,删除托盘图标,添加如下代码: * 第五节:托盘图标的实现 1、托盘图标的添加与移除 2、托盘菜单的实现 * 第五节:托盘图标的实现 托盘菜单的实现 当右键托盘菜单时,弹出菜单。 * 结束语 本讲回顾 第一节:主窗口的实现 第二节:右侧窗口的实现 第三节:系统消息框的实现 第四节:关于窗口的实现 第五节:托盘图标的实现 本系列讲座总结 窗口编程是Windows界面编程的重要技术之一,掌握好它将对以后的工作起到举足轻重的作用。 希望大家在看完以后,要多加练习,只有把讲座里面提到的各种API函数与参数倒背如流,才能称得上熟练掌握。 希望大家不要对MSDN和本系列讲座的PPT和Demo有任何的依赖,只有刻录在你大脑里的东西才是你真正的才能! * 第三节:系统消息框的实现 1、默认的系统消息框 2、安装钩子 3、子类化系统消息框的窗口 4、处理系统消息框的背景 5、反子类化 6、卸载钩子 7、“退出”菜单选项的处理 8、注册消息 9、广播消息 * 第三节:系统消息框的实现 卸载钩子 安装钩子之后,如果钩子不再使用,要卸载钩子。代码如下: * 第三节:系统消息框的实现 1、默认的系统消息框 2、安装钩子 3、子类化系统消息框的窗口 4、处理系统消息框的背景 5、反子类化 6、卸载钩子 7、“退出”菜单选项的处理 8、注册消息 9、广播消息 * 第三节:系统消息框的实现 “退出”菜单选项的处理 不过,我们发现选中菜单的“退出”选项时,软件直接关闭了,并没有弹出系统信息框。查看代码发现对菜单的响应消息是直接DestroyWindow了主窗口。如下图所示: * 第三节:系统消息框的实现 “退出”菜单选项的处理 我们得修改一下IDM_EXIT的消息处理代码,让它发送一个WM_CLOSE消息给主窗口。如下图所示: * 第三节:系统消息框的实现 1、默认的系统消息框 2、安装钩子 3、子类化系统消息框的窗口 4、处理系统消息框的背景 5、反子类化 6、卸载钩子 7、“退出”菜单选项的处理 8、注册消息 9、广播消息 * 第三节:系统消息框的实现 注册消息 在我们主窗口关闭之后,我们有时会发送广播消息,广播给其它窗口,告诉它们主窗口已关闭。 要广播我们自己的消息,就得先注册消息。定义要注册的消息: * 第三节:系统消息框的实现 注册消息 在InitInstance函数的最后,注册消息: * 第三节:系统消息框的实现 1、默认的系统消息框 2、安装钩子 3、子类化系统消息框的窗口 4、处理系统消息框的背景 5、反子类化 6、卸载钩子 7、“退出”菜单选项的处理 8、注册消息 9、广播消息 * 第三节:系统消息框的实现 广播消息 在确认关闭主窗口之后,广播消息。 在主窗口的WM_CLOSE响应代码中添加如下代码: * 第三节:系统消息框的实现 广播消息 如果右侧窗口接收到我们注册的WM_BROADCAST消息,就发送关闭本窗口的消息。 * 第四节:关于窗口的实现 1、定义窗口类名字、消息处理函数、注册窗口类 2、创建窗口 3、创建并设置窗口的区域 4、设置定时器 5、定时更新窗口的内容 6、单击关闭窗口 7、托盘图标的添加与移除 8、托盘菜单的实现。 * 第四节:关于窗口的实现 定义窗口类名字 “关于”窗口的窗口类名定义: * 第四节:关于窗口的实现 消息处理函数、注册窗口类 “关于”窗口的消息处理函数: 注册“关于”窗口类: * 第四节:关于窗口的实现 1、定义窗口类名字、消息处理函数、注册窗口类 2、创建窗口 3、创建并设置窗口的区域 4、设置定时器 5、定时更新窗口的内容 6、单击关闭窗口 7、托盘图标的添加与移除 8、托盘菜单的实现。 * 第四节:关于窗口的实现 创建窗口 定义“关于”窗口的默认宽度跟默认高度: * 第四节:关于窗口的实现 创建窗口 定义“关于”窗口的句柄: * 第四节:关于窗口的实现 创建窗口 在选择关
您可能关注的文档
最近下载
- 2011年一级水利水电工程管理与实务真题.doc VIP
- 港口规划与布置3 港口装卸工艺.ppt VIP
- 2025年广东省中考语文二轮复习《中考作文热点素材与运用示范》.pptx VIP
- 湖南省长沙市雨花区2023-2024学年四年级下学期期末考试数学试题.docx VIP
- 第1课 中华人民共和国成立 课件(共25张PPT)(含音频+视频).pptx VIP
- 舌下腺囊肿科普宣传课件.pptx VIP
- 马克思主义政治经济学概论(第二版)第十五章.ppt VIP
- 在线网课学习课堂《网络信息检索(西安科大 )》单元测试考核答案.docx
- 一例慢阻肺急性加重合并II型呼吸衰竭的个案护理.pptx
- 培训课件--防暑降温培训教材.ppt VIP
文档评论(0)