织梦CMS - 轻松建站从此开始!

罗索

windows mobile 5.0 下创建菜单

罗索客 发布于 2009-11-15 21:20 点击:次 
在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法
TAG:

在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:

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,1, (LPARAM)&tbbi); //1为SK1,2为SK2
   g_hMenu = (HMENU)tbbi.lParam;//g_hMenu为全局变量,这样就可以在任何地方隐藏子菜单了

 EnableMenuItem(g_Menu,ID_TEST,MF_GRAYED);//隐藏子菜单
//显示子菜单 EnableMenuItem(g_Menu,ID_TEST,MF_ENABLED);

4。使某个SK不可用
::SHEnableSoftkey(mbi.hwndMB,0,TRUE,FALSE);

(网络)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/200911/7933.html]
本文出处:网络博客 作者:网络
顶一下
(0)
0%
踩一下
(1)
100%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容