【转】[Windows Mobile]windows mobile 5.0 下创建/隐藏菜单
2010-04-14 12:56
381 查看
在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:
1.创建并显示菜单
SHMENUBARINFO mbi;
ZeroMemory(&mbi, sizeof(SHMENUBARINFO));
mbi.cbSize=sizeof(SHMENUBARINFO);
mbi.hwndParent=m_hWnd;
mbi.hInstRes=::AfxGetInstanceHandle();
mbi.dwFlags=SHCMBF_HMENU|SHCMBF_HIDESIPBUTTON;//隐藏SIP
mbi.nToolBarId=IDR_MYMENU;
SHCreateMenuBar(&mbi);
2.隐藏菜单
HWND hwnd=::SHFindMenuBar(m_hWnd);
if(hwnd!=NULL)
::ShowWindow(hwnd,SW_HIDE);
3.隐藏某个子菜单项
TBBUTTONINFO tbbi = {0};
tbbi.cbSize = sizeof(TBBUTTONINFO);
tbbi.dwMask = TBIF_LPARAM | TBIF_BYINDEX;
::SendMessageW(mbi.hwndMB, TB_GETBUTTONINFO,0, (LPARAM)&tbbi); //0为SK1,1为SK2(即左右软键)
g_hMenu = (HMENU)tbbi.lParam;//g_hMenu为全局变量,这样就可以在任何地方隐藏子菜单了
EnableMenuItem(g_Menu,ID_TEST,MF_GRAYED);//隐藏子菜单
//显示子菜单
EnableMenuItem(g_Menu,ID_TEST,MF_ENABLED);
在使用语言Module时,要注意库中的ID与应用程序中定义的ID是否一致。
4.使某个SK(Soft Key)不可用
::SHEnableSoftkey(mbi.hwndMB,0,TRUE,FALSE);
http://www.cppblog.com/gtwdaizi/articles/55157.html
1.创建并显示菜单
SHMENUBARINFO mbi;
ZeroMemory(&mbi, sizeof(SHMENUBARINFO));
mbi.cbSize=sizeof(SHMENUBARINFO);
mbi.hwndParent=m_hWnd;
mbi.hInstRes=::AfxGetInstanceHandle();
mbi.dwFlags=SHCMBF_HMENU|SHCMBF_HIDESIPBUTTON;//隐藏SIP
mbi.nToolBarId=IDR_MYMENU;
SHCreateMenuBar(&mbi);
2.隐藏菜单
HWND hwnd=::SHFindMenuBar(m_hWnd);
if(hwnd!=NULL)
::ShowWindow(hwnd,SW_HIDE);
3.隐藏某个子菜单项
TBBUTTONINFO tbbi = {0};
tbbi.cbSize = sizeof(TBBUTTONINFO);
tbbi.dwMask = TBIF_LPARAM | TBIF_BYINDEX;
::SendMessageW(mbi.hwndMB, TB_GETBUTTONINFO,0, (LPARAM)&tbbi); //0为SK1,1为SK2(即左右软键)
g_hMenu = (HMENU)tbbi.lParam;//g_hMenu为全局变量,这样就可以在任何地方隐藏子菜单了
EnableMenuItem(g_Menu,ID_TEST,MF_GRAYED);//隐藏子菜单
//显示子菜单
EnableMenuItem(g_Menu,ID_TEST,MF_ENABLED);
在使用语言Module时,要注意库中的ID与应用程序中定义的ID是否一致。
4.使某个SK(Soft Key)不可用
::SHEnableSoftkey(mbi.hwndMB,0,TRUE,FALSE);
http://www.cppblog.com/gtwdaizi/articles/55157.html
相关文章推荐
- 【转】windows mobile 5.0 下创建/隐藏菜单
- windows mobile 下创建/隐藏菜单
- windows mobile 5.0 下创建菜单
- Windows Mobile上菜单的创建
- windows mobile 5.0 下创建Extension DLL
- Windows mobile 平台 在platform.dat中创建快捷方式,链接到中文路径 字符\Windows\“开始”菜单\设置
- VC 创建托盘,托盘tooltip。右键托盘菜单,点击别的地方会隐藏掉的问题。
- FragmentTabHost+RadioGroup+RadioButton创建底部菜单(隐藏顶部默认)
- VC 创建托盘,托盘tooltip。右键托盘菜单,点击别的地方会隐藏掉的问题。
- windows mobile 5.0 下创建Extension DLL
- Windows Mobile 5.0 窗体的隐藏
- wince 6.0或5.0 windows mobile 6.5 trayicon 如何创建 系统托盘 图标
- 创建快捷方式到Windows Mobile程序菜单
- Activity基础总结---注册、布局设置、隐藏标题、创建菜单、销毁活动
- Unity创建按钮点击实现菜单显示和隐藏
- windows mobile 1.如何真正的退出程序而不隐藏窗体。2.让窗体跟着输入法窗口上移。3.如何创建非全屏Form
- 使用Popup窗口创建无限级Web页菜单(2)
- 创建androidMenu菜单
- Vmware vSphere 5.0系列教程之六 虚拟机及主机配置文件的创建和模板部署
- Qt: 隐藏菜单QMenu