symbian自定义动态菜单
来源:互联网 发布:剑桥商务英语 知乎 编辑:程序博客网 时间:2024/04/28 10:53
无论是在UI还是在Container中,只需要继承DynInitMenuPaneL函数就可以实现动态菜单的效果。
首先要在rss中菜单资源进行改变MENU_PANE类型函数里定义出所有需要显示的项。然后在RESOURCE EIK_APP_INFO函数里,将该MENU_PANE所从属的menubar引入,并添加:
cba = R_AVKON_SOFTKEYS_OPTIONS_BACK;语句。
同时也可以根据需要添加多个MENU_PANE项,达到多级菜单的效果
接着在DynInitMenuPaneL函数实现菜单改变,例如,可以设置两个成员变量,分别设置相反值,达到动态位置不变值改变的效果
code:
ConstructL()
{
iMenu1 = EFalse;
iMenu2 = ETrue;
}
HandleCommandL(TInt aCommand)
{
case ECommand1:
iMenu1 = ETrue;
iMenu2 = EFalse;
case ECommand2:
iMenu1 = EFalse;
iMenu2 = ETrue;
}
DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane)
//每一次的参数aResourceId都不一样。这是遍历你在rss里定义的MENU_PANE。
{
if(R_MENU == aResourceId)//所以这里一定要用上if判断
{
aMenuPane->SetItemDimmed(ECommand1, iMenu1);//SetItemDimmed()在各个平台上的实际效果各不相同
aMenuPane->SetItemDimmed(ECommand2, iMenu2);//S60平台上SetItemDimmed()会隐藏菜单项.UIQ会使菜单变灰而失效
}
}
如果希望更换整个左软键的选项菜单中的内容,可以再DynInitMenuPaneL外使用
iEikonEnv->AppUiFactory()->MenuBar()->SetMenuTitleResourceId(R_ADD_MENU);
- symbian自定义动态菜单
- symbian自定义动态菜单
- symbian 动态菜单(转帖加原创)
- 仿UC自定义动态菜单
- 一组动态菜单的自定义标签
- 自定义控件 动态折叠二级菜单
- svg自定义菜单的动态实现
- ArcEngine java 如何创建自定义菜单、环境菜单、调色板以及动态菜单项
- 动态改变用户自定义控件的菜单样式
- C# 自定义控件、用户控件、动态加载菜单按钮
- symbian中自定义控件
- Symbian 自定义控件
- symbian 自定义TabGroup
- 自定义dialog--symbian
- symbian c++ 动态数组
- Symbian 动态数组CArray
- Symbian 动态改变CAB
- 自定义菜单
- 写苏州的诗句
- 端口大全+注解
- 找出最近路线
- C#附加数据库的思路跟算法
- 判断文件的类型
- symbian自定义动态菜单
- Eclipse调试技术
- 够专业,就不拍失业(转载)
- 更改表用户
- C#多线程写日志
- Java程序中遇到的乱码问题以及解决方法
- 定义一个DataGridViewTextBoxColumn使其可以设置列标题显示的位置
- 全文检索使用
- mssql 字增自段怎样重置(重新自增)|清空表已有数据