请教一个brew的菜单显示问题

leixp3636 2008-12-18 01:52:58

IMenuCtl* pMenuCtl = NULL;
CtlAddItem rMenuItem;
AEERect nRect;
AEEItemStyle nNormal;
AEEItemStyle nSel;

//初始化
if(ISHELL_CreateInstance(pMe->a.m_pIShell,
AEECLSID_MENUCTL,
(void**)(&pMe->m_pObj)) != SUCCESS)
{
return FALSE;
}

pMenuCtl = (IMenuCtl*)pMe->m_pObj;
IMENUCTL_Reset(pMenuCtl);
IMENUCTL_SetActive(pMenuCtl, FALSE);

rMenuItem.pText = NULL;
rMenuItem.pImage = NULL;
rMenuItem.pszResImage = MENU_RES_FILE;
rMenuItem.pszResText = MENU_RES_FILE;
rMenuItem.wFont = AEE_FONT_NORMAL;

//增加菜单项
//开始
rMenuItem.wText = IDS_START;
rMenuItem.wImage = IDB_START;
rMenuItem.wItemID = IDS_START;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//选关
rMenuItem.wText = IDS_SELSTART;
rMenuItem.wImage = IDB_SELSTART;
rMenuItem.wItemID = IDS_SELSTART;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//重新开始
rMenuItem.wText = IDS_RESTART;
rMenuItem.wImage = IDB_RESTART;
rMenuItem.wItemID = IDS_RESTART;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//上一关
rMenuItem.wText = IDS_PRESTART;
rMenuItem.wImage = IDB_PRESTART;
rMenuItem.wItemID = IDS_PRESTART;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//下一关
rMenuItem.wText = IDS_NEXTSTART;
rMenuItem.wImage = IDB_NEXTSTART;
rMenuItem.wItemID = IDS_NEXTSTART;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//退出
rMenuItem.wText = IDS_QUIT;
rMenuItem.wImage = IDB_QUIT;
rMenuItem.wItemID = IDS_QUIT;
IMENUCTL_AddItemEx(pMenuCtl, &rMenuItem);

//设置样式
nNormal.ft = AEE_FT_NONE;
nNormal.xOffset = 0;
nNormal.yOffset = 0;
nNormal.roImage = AEE_RO_TRANSPARENT;
nSel.ft = AEE_FT_RAISED;
nSel.xOffset = 0;
nSel.yOffset = 0;
nSel.roImage = AEE_RO_TRANSPARENT;
IMENUCTL_SetStyle(pMenuCtl, &nNormal, &nSel);

//设置菜单属性并显示
IMENUCTL_SetProperties(pMenuCtl,
IMENUCTL_GetProperties(pMenuCtl) & ~(MP_ICON_TEXT_TOP));
SETAEERECT(&nRect, 0, 0, pMe->m_nScrWidth, pMe->m_nScrHeight);
IMENUCTL_SetRect(pMenuCtl, &nRect);
IMENUCTL_SetActive(pMenuCtl, TRUE);
IMENUCTL_Redraw(pMenuCtl);

pMe->m_nState = STATE_MAINMENU;

这段代码有什么问题?为什么不能在模拟器上显示菜单?(放在EVT_APP_START后面)
谢谢
...全文
659 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunyymq 2009-03-05
  • 打赏
  • 举报
回复
最后用idisplay刷新屏幕!
jerry_lin3000 2009-02-09
  • 打赏
  • 举报
回复
是不是应该把***_HandleEvent的返回值设置为true
xiu_cai82 2008-12-25
  • 打赏
  • 举报
回复
菜单创建的先后顺序有问题;设置区域在先;
雨月琉琉 2008-12-25
  • 打赏
  • 举报
回复
那模拟器上显示的是什么?是只有菜单,没有菜单项么?
建议可以试试不要菜单项 图标/文字 看看效果。检查下资源文件。
  • 打赏
  • 举报
回复
可能的问题是:
1)图标的色深可能与模拟器的设备文件不兼容
2)资源文件中的编码不是Unicode

那模拟器上显示的是什么?报错么?

949

社区成员

发帖
与我相关
我的任务
社区描述
为开发者提供高通丰富的解决方案及全面技术下载内容。本版以AI人工智能、WoS移动笔记本、XR、IoT 物联网、Auto 汽车、生成式AI等核心板块组成,为开发者提供一个便捷及高效的学习交流平台。
人工智能物联网机器学习 企业社区 北京·东城区
社区管理员
  • Qualcomm开发
  • csdnsqst0050
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧