- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第05章MiniGUI菜单编程
哈尔滨工业大学华德应用技术学院—计算机应用技术系—嵌入式系统方向 第5章 MiniGUI菜单编程 计算机应用技术系 第5章 MiniGUI菜单编程 菜单通常依附于窗口中(称为普通菜单) ,或者以独立的、可弹出形式出现(称为弹出式菜单) 。主要是提供给用户一种快捷选择的方式。 第5章 MiniGUI菜单编程 5.1 菜单的创建和操作 5.2 菜单编程示例 第5章 MiniGUI菜单编程 5.1 菜单的创建和操作 在程序中,我们首先要建立菜单,然后将菜单句柄传递给创建主窗口的函数CreateMainWindow。当主窗口显示出来时,我们创建的菜单就会在标题栏下显示出来。当用户用鼠标或者 Alt 键激活菜单并选择了菜单项后,该菜单所依附的窗口会收到MSG_COMMAND 消息。 5.1 菜单的创建和操作 菜单的创建需要两个过程: 1. 建立菜单栏 2. 建立菜单栏中各个菜单的子菜单 5.1 菜单的创建和操作 每一个菜单项在程序中通过菜单结构描述: typedef struct _MENUITEMINFO { UINT mask; UINT type; UINT state; int id; HMENU hsubmenu; PBITMAP uncheckedbmp; PBITMAP checkedbmp; DWORD itemdata; DWORD typedata; UINT cch; } MENUITEMINFO; typedef MENUITEMINFO* PMENUITEMINFO; 具体说明见P71(89) 5.1 菜单的创建和操作 5.1.1 创建普通菜单 5.1 菜单的创建和操作 首先,我们调用 CreateMenu 创建一个空的菜单句柄,然后调用 InsertMenuItem 函数向这个空菜单中添加菜单项,如下所示: HMENU hmnu; MENUITEMINFO mii; hmnu = CreateMenu(); memset (mii, 0, sizeof(MENUITEMINFO)); mii.type = MFT_STRING ; mii.state = 0; mii.id = IDM_ABOUT_THIS; mii.typedata= (DWORD)文件...; InsertMenuItem(hmnu, 0, TRUE, mii); 5.1 菜单的创建和操作 如果这个菜单项有子菜单,则可通过设置菜单项的 hsubmenu 变量来指定菜单项的子菜单句柄(由函数CreatePopupMenu 来创建子菜单句柄) 5.1 菜单的创建和操作 5.1.1 创建弹出菜单 弹出式菜单和菜单栏的用途不同,通常弹出式菜单用来响应用户的鼠标右键点击,通常也称为“上下文菜单”。 5.1 菜单的创建和操作 5.1.2 创建弹出菜单 创建弹出式菜单调用 CreatePopupMenu 函数。在显示这个菜单时,调用 TrackPopupMenu 函数: int GUIAPI TrackPopupMenu (HMENU hmnu, UINT uFlags, int x, int y, HWND hwnd); 5.1 菜单的创建和操作 5.1.3 操作菜单项属性 应用程序可以通过 GetMenuItemInfo 函数获得感兴趣的菜单项属性,也可以通过SetMenuItemInfo 函数设置感兴趣的菜单项属性。原型如下: int GUIAPI GetMenuItemInfo (HMENU hmnu, int item, BOOL flag, PMENUITEMINFO pmii); int GUIAPI SetMenuItemInfo (HMENU hmnu, int item, BOOL flag, PMENUITEMINFO pmii); 5.1 菜单的创建和操作 5.1.4 删除、销毁菜单(项) MiniGUI 提供了如下函数用来从菜单中删除菜单项或者销毁菜单: ? RemoveMenu:该函数从菜单中删除指定的菜单项。如果菜单项含有子菜单,则会解除子菜单和该菜单项的关联,但并不删除子菜单 5.1 菜单的创建和操作 5.1.4 删除、销毁菜单(项) ? DeleteMenu:该函数从菜单中删除指定的菜单项。如果菜单项含有子菜单,则同时会删除子菜单。 ? DestroyMenu:删除整个菜单。 第5章 MiniGUI菜单编程 5.2 菜单编程示例 MDE 中 notebook 或P73(91) 哈尔滨工业大学华德应用技术学院—计算机应用技术系—嵌
您可能关注的文档
最近下载
- “他她它”的用法区别(课件)-2021-2022学年语文一年级上册.pptx VIP
- 2025年春季江苏省港口集团校园招聘笔试备考题库及答案解析.docx VIP
- 幼儿园社会治安最小应急单元组织机构.docx VIP
- 义务教育质量监测初中美术试题.pdf VIP
- usl超声c扫描喷水检测系统在哈飞复合材料检测中的应用.doc VIP
- 化学品安全技术说明书SDS-乙炔.doc VIP
- GMP基础知识新员工培训.pptx VIP
- 《海洋资源与开发》测试题.docx VIP
- 广东医科大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 医学细胞生物学复习重点.doc VIP
原创力文档


文档评论(0)