请问如何用buiw创建一个二级菜单

feimor 2009-01-08 06:35:32
我用BUIW的IPOPUPMENU接口创建一个弹出式菜单,在用IPOPUPMENU_LoadMenuItem()将item项添加进去时将flag设置为MMF_SUBMENU,可是该menu项不仅没有成功显示为二级菜单,甚至该菜单项也无法显示了。请问在我这样设置了后,还需要进一步做那些操作,才能创建一个二级弹出菜单。
以下是我的代码剪贴:
static boolean notepadform2_CreateOptionMenu(notepadform2 *pMe){
int result=0;
if(ISHELL_CreateInstance(pMe->pIShell,AEECLSID_POPUPMENUFORM,(void **)&pMe->pOptionMenu)!=SUCCESS){
return FALSE;
}

result+=IPOPUPMENU_LoadMenuItem(pMe->pOptionMenu,NOTEPAD_RES_FILE,MENUITEM_NEW,MENUITEM_NEW,MMF_ENABLED);
result+=IPOPUPMENU_LoadMenuItem(pMe->pOptionMenu,NOTEPAD_RES_FILE,MENUITEM_EDIT,MENUITEM_EDIT,MMF_ENABLED);
result+=IPOPUPMENU_LoadMenuItem(pMe->pOptionMenu,NOTEPAD_RES_FILE,MENUITEM_READ,MENUITEM_READ,MMF_ENABLED);
result+=IPOPUPMENU_LoadMenuItem(pMe->pOptionMenu,NOTEPAD_RES_FILE,MENUITEM_DELETE,MENUITEM_DELETE,MMF_ENABLED);
*/
if(result){
return FALSE;
}
IFORM_SetSoftkeys((IForm *)pMe->pOptionMenu,NOTEPAD_RES_FILE,IDS_OK,IDS_CANCEL);
IFORM_SetSelectHandler((IForm *)pMe->pOptionMenu,(PFNSELECT)optionSel_HandleEvent,pMe);
HANDLERDESC_Init(&pMe->pOptionMenuHandler,optionMenu_HandleEvent,pMe,optionMenu_Del);
IFORM_SetHandler((IForm *)pMe->pOptionMenu,&pMe->pOptionMenuHandler);
if(result){
return FALSE;
}

return TRUE;
}
...全文
531 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
feimor 2009-01-14
  • 打赏
  • 举报
回复
在弹出式菜单的事件处理optionMenu_HandleEvent中已经调用了HANDLERDESC_Call(&me->hdForm, evt, wParam, dwParam)。
我现在不清楚的是,创建一个二级弹出菜单要经过哪些步骤,高手是否可以说明,或者直接给我段代码研究下~~
在此感激不尽了。
  • 打赏
  • 举报
回复
消息循环怎么处理的?是否处理 HANDLERDESC_Call(&me->hdForm, evt, wParam, dwParam);

949

社区成员

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

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