- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Symbian O 应用程序UI组件 — 菜单、状态面板
菜单(Menu)
菜单是当用户按下选项(Options)键(CBA按键)时显示的命令列表窗口。菜单由多个菜单项(菜单命令)组成,每个菜单项表示为一个文本标签。菜单可以通过在资源文件中指定菜单条(menubar)和菜单面板(menupane)资源创建。菜单条可以包含一个或多个由菜单项组成的菜单面板。一旦用户选择了一条菜单项,应用框架将调用应用程序命令处理器响应相应的选择。
菜单可以添加到主应用程序屏幕、应用程序视图、对话框和其他一些控件上。一旦显示了菜单,软件(CBA)即会更改为左键选择(Select)右键取消(Cancel)。
菜单项可以含有一个子菜单。子菜单包含与此菜单项相关的其他命令集合。每个菜单项最多只能包含一个子菜单,子菜单不能再包含子菜单。
1、使用菜单资源定义菜单
1.1、MENU_BAR
菜单资源通过在MENU_BAR结构体中定义:
RESOURCEMENU_BAR r_my_menu_bar
{
titles=
{
MENU_TITLE{ txt = ; menu_pane = r_my_menu_pane1; },
MENU_TITLE{ txt = ; menu_pane = r_my_menu_pane2; }
};
}
MENU_BAR结构体中包含一个titles数组,数组的每个元素是一个MENU_TITLE结构。MENU_TITLE结构由两个字段组成:txt字段指定菜单的标题,但在S60中菜单标题并不显示,所以通常设置为空,但某些时候提供一个有意义的菜单标题可以作为提示信息。menu_pane字段引用一个MENU_PANE结构,包含了菜单项。当titles数组中包含多个元素时,菜单在显示菜单项的顺序时,将按照数组元素定义的先后顺序从上而下的显示每个元素引用的MENU_PANE结构中定义的菜单项。
1.2、MENU_PANE
菜单的菜单项通过在MENU_PANE结构体中定义:
RESOURCEMENU_PANE r_my_menu_pane1 { items = { MENU_ITEM { command = EMyAppCmdCom1; txt = item1; }, MENU_ITEM { command = EMyAppCmdCom2; txt = item2; } }; }
MENU_PANE结构体中包含了一个items数组,数组的每个元素是一个MENU_ITEM结构,也就是一个菜单项。MENU_ITEM结构由以下个字段组成:command字段指定了菜单项的命令ID。命令ID是一个应用程序内唯一的枚举值,在扩展名为.hrh的头文件中定义(通常命令ID的名称格式为:E应用程序名Cmd命令名);txt字段指定了菜单项显示的文本信息;cascade字段指定了子菜单项,需要引用一个MENU_PANE结构。
2、应用程序与菜单关联
2.1、主应用程序与菜单关联
通过设置资源文件中的EIK_APP_INFO结构中的menubar和cba字段:
RESOURCE EIK_APP_INFO
{
menubar = r_my_menu_bar;
cba = R_AVKON_SOFTKEYS_OPTIONS_BACK;
}
2.2、视图与菜单关联
通过设置资源文件中的AVKON_VIEW结构中的menubar和cba字段:
RESOURCE AVKON_VIEWr_my_view { menubar = r_my_menu_bar; cba =R_AVKON_SOFTKEYS_OPTIONS_BACK; }
3、动态菜单
动态菜单是指在应用程序运行过程中,根据需要更改菜单条(menubar)或菜单项(menu item)。
3.1、更改菜单条(menubar)
改变应用程序所使用的菜单资源:
iEikonEnv-AppUiFactory()-MenuBar()-
SetMenuTileResourceId(MENU_BAR_RESOURCE_ID);
改变应用程序视图所使用的菜单资源:
iMyView-MenuBar()-SetMenuTitleResourceId(MENU_BAR_RESOURCE_ID);
3.2、更改菜单项(menuitem)
所有可以拥有菜单的UI组件(AppUi、View)都继承
您可能关注的文档
- MG-EHSWI-4-001 环境、健康安全、企业社会责任目标指标和管理改善方案A5版.doc
- MF-SPE-00消防水系统工程施工规范.doc
- lol小鱼人s6天加点 lols6中单鱼人出装符文.doc
- LC98Ⅰ高效液相谱仪和e2695高效液相色谱仪价格.docx
- MHTJ-19标膨土路基试验段施工方案.docx
- MicrosoftOffice Word 基本操作.doc
- miRNA论文:mR-34c在小鼠胚胎干细胞向雄性生殖细胞分化过程中的作用.doc
- MCO-50B-0X1液压站油冷机技术协议(齐二机集团瓦机数控).doc
- Mpacc一战23,二战243,两征服央财方法.doc
- K10(下)数学第章三角问题的题型与方法复习课教案.doc
- s版三级上册语文1《赵州桥》教学设计.doc
- S版小学一级下册《趣的汉字》教学设计.doc
- s版小学二级语文下期末复习练习题汇总.doc
- SY4200-系列范检验批表格1.doc
- SY4201.1-油天然气建设工程施工质量验收规范设备安装工程第1部分:机泵类设备检验批质量验收记录表格.doc
- Taobao产品需说明书(规格最全的PRD).docx
- SY4205-《石天然气建设工程施工质量验收规范-自动化仪表工程》.doc
- SYD-2801F高低温沥青针入度测定仪和LHZR-3自动沥青针入度测定仪价格.docx
- TC-GY02型计机控制智能化液压传动综合测试系统.doc
- TCP Socke中的多线程--网络程序设计实验6.doc
原创力文档


文档评论(0)