【转】windows mobile 5.0 下创建/隐藏菜单

Windows Mobile嵌入式开发实操指南:ROM刷写与ActiveSync调试 Windows Mobile虽已退出主流,但在工业终端、物流手持设备及数字遗产保护等场景中仍广泛服役。其本质是基于ARM架构(如Intel PXA270、Samsung S3C2440)的轻量级嵌入式操作系统,依赖ActiveSync协议实现PC协同,并通过ROM镜像、注册表持久化和CAB包部署保障系统稳定性。技术价值在于离线可操作、无云依赖、强硬件绑定与高确定性响应——这使其成为严苛工业环境中的‘时间锚定系统’。典型应用场景包括工控面板维护、老款Symbol/Motorola采集终端升级、PIM数据迁移及 阅读详情

 

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

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); 

5.子菜单打勾
    HMENU hMenu;
    HWND hwndMenuBar = ::SHFindMenuBar(m_hWnd); //m_hWnd是窗口句柄
    TBBUTTONINFO tbbi = {0};
    tbbi.cbSize = sizeof(tbbi);
    tbbi.dwMask = TBIF_LPARAM|TBIF_BYINDEX;
    //第三个参数1表示右菜单,为0表示左菜单
    ::SendMessage(hwndMenuBar, TB_GETBUTTONINFO, 1, (LPARAM)&tbbi);
    hMenu = (HMENU)tbbi.lParam; //hMenu这个句柄就是菜单操作常用的句柄了,获得这个句柄非常有用。
    DWORD ack =    CheckMenuItem(hMenu,ID_STARTUP,MF_BYCOMMAND|MF_CHECKED);

 

Windows 10 Mobile测试版系统获取与安装全指南 操作系统测试版本往往包含开发者未公开的实验性功能与设计原型,通过逆向工程和注册表修改可以激活这些隐藏特性。在移动设备领域,Windows 10 Mobile测试版尤其值得研究,它包含了Continuum模式改进、Fluent Design早期元素等关键技术验证。从技术考古角度看,这些数字遗迹对理解操作系统演进路径具有独特价值。本文将详细介绍在Lumia 950等设备上获取和安装特定测试版系统(如Build 15254)的完整方案,包括FFU镜像解密、Thor2刷机工具使用等关键技术环节,并分享通过注册表修改 阅读详情

相关推荐

NVIDIA NCCL 安装和测试实战教程

ibrary)是用于深度学习应用的高性能通信库,可加速多GPU通信和同步。它能够在多个GPU之间进行高效的数据传输和集体操作,显著提高了分布式GPU系统上深度学习训练和推理的性能。NVIDIA NCCL是加速多GPU系统上深度学习应用的必不可少的工具。其高效的通信原语和集体操作显著提高了分布式训练和推理的性能,使其成为现代深度学习基础架构的关键组成部分。

weixin_39818775的博客 4427

【转】[Windows Mobile]windows mobile 5.0 下创建/隐藏菜单

在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:1.创建并显示菜单  SHMENUBARINFO mbi;  ZeroMemory(&mbi, sizeof(SHMENUBARINFO));  mbi.cbSize=sizeof(SHMENUBARINFO);  mbi.hwndParent=m_hWnd;  mbi.hInstRes=::AfxGetInsta

okmnji79513的专栏 546

MICROSAR OS:第一个task是如何执行起来的?

MICROSAR OS是Vector公司开发的符合AUTOSAR OS规范的实时操作系统。本文介绍MICROSAR

humu7733的博客 2568

windows mobile 下创建/隐藏菜单

1.创建并显示菜单SHMENUBARINFO mbi; ZeroMemory(&mbi, sizeof(SHMENUBARINFO)); mbi.cbSize=sizeof(SHMENUBARINFO); mbi.hwndParent=m_hWnd; mbi.hInstRes=::AfxGetInstanceHandle(); mbi.dwFlags=SHCMBF

懒人的技术笔记 2199

zynq-7000学习笔记(八)——USB摄像头图像采集

PC平台:WINDOWS 10 64位 Xilinx设计开发套件:Xilinx_vivado_sdk_2015.4 开发板:Zed Board USB摄像头:罗技 C270(720P) linux源码:2016_R1 一、配置linux,支持UVC       如果是中星微的ZC3XX系列的芯片,则要进到GSPCA把ZC3XX的驱动选上

luotong86的专栏 1万+

IEC61850客户端连接实战:CMS vs MMS协议抓包对比与性能初探(基于YX-PIS协议栈)

本文深入探讨了IEC61850客户端连接中CMS与MMS协议的抓包对比与性能优化。通过Wireshark抓包分析、协议栈配置实战和性能基准测试,揭示了两种协议在连接建立、数据交互和性能调优方面的关键差异,为智能电网自动化系统的协议选择提供了实用指南。

weixin_29209805的博客 214

Windows mobile 菜单(Menu Bar) 更改解决方案

Windows Mobile 菜单(Menu Bar,CommandBar)使用更改解决方案 本文参考并引用了如下两篇博客内容: http://hi.baidu.com/angelmeng86/blog/item/8af9570820d7e388d1581bd2.htmlhttp://blog.163.com/aiding_001/blog/static/22908192010

aikker的专栏 1124

4、基于球面波展开的近场/远场变换技术解析

本文深入解析了基于球面波展开的近场/远场变换技术,涵盖坐标系统选择、截断测量处理、高级SWE方法及实际应用场景。重点介绍了广义SWE、全探头补偿、平移SNF测量(TSWE)等关键技术,结合吸收材料与导电地板系统的误差处理方案,系统总结了各类方法的优缺点与适用场景,并通过流程图和案例分析展示了技术应用路径。该技术在汽车、通信和航空航天领域的天线测量中具有重要价值,可显著提升测量效率与精度。

dell8的博客 255

Windows Mobile上菜单的创建

在wince与wm中,菜单创建过程如下: 1 菜单栏的创建 (1) Win32 和 MFC 都适用的创建方式 /* 加载菜单到窗口, 并返回菜单窗口句柄 uiMenuID 菜单资源ID pWnd 需要加载菜单的窗口返回值 菜单栏窗口句柄 */  HWND Menu_LoadMenuToWnd( UINT uiMenuID, CWnd* pWnd ) { SHMENUBARINFO

zeng622peng的专栏 1321

独立游戏之路:Tap篇 -- 个人开发者上架TapTap步骤和注意事项

作为一名游戏开发者,将自己的独立游戏上架到 TapTap 平台是一个不错的选择。TapTap 是一个拥有大量用户的游戏社区平台,上架游戏可以让更多的玩家发现和体验你的游戏。TapTap 是一个游戏社区平台,用户可以在平台上下载和分享游戏。TapTap 拥有大量的用户,并且用户活跃度高,这为独立游戏开发者提供了一个很好的展示和推广平台。进入TapTap开发者服务后台。

陈言必行 -- Unity游戏开发领域优质博主 6395

如何使用VNC对openEuler系统进行远程图形化操作

本文详细介绍了在openEuler系统中配置VNC远程图形化操作的方法。主要内容包括:1)服务端配置:安装GNOME图形界面和TigerVNC服务,创建VNC用户并设置密码,配置VNC服务启动脚本;2)客户端连接:使用VNC Viewer等工具连接服务器;3)常见问题解决方法。通过5901端口建立连接后,用户可远程操作openEuler图形界面,适用于需要图形化管理的场景。

2501_93651177的博客 313

windows mobile 5.0 下创建菜单

在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:1。创建并显示菜单SHMENUBARINFO mbi; ZeroMemory(&mbi, sizeof(SHMENUBARINFO)); mbi.cbSize=sizeof(SHMENUBARINFO); mbi.hwndParent=m_hWnd; mbi.hInstRes=::AfxGetIn...

weixin_30527323的博客 104

微信小程序 - 解决请求报错 request:fail errcode:-201 cronet_error_code:-201 error_msg:net::ERR_CERT_DATE_INVALID

微信小程序报错“request:fail errcode:-201 cronet_error_code:-201 error_msg:net::ERR_CERT_DATE_INVALID“,微信小程序请求报错,微信小程序errcode:-201,服务器报错,无法调用接口,微信小程序真机https请求失败,微信小程序wx.request接口报错,小程序真机调试运行接口都报错了,真机测试下网络请求都不行了且报错,证书没问题依旧报错,检查HTTPS证书,ssl证书,使用浏览器测试访问证书是正常的,不是证书问题,请

🏆 前端领域优质创作者 1万+

windows mobile 菜单处理

Menu的问题在使用win32API进行创建一个菜单的时候,一般按照这样的步骤:1,在资源文件中创建菜单资源2,在窗体中加载资源以上如windows+mobile编程中所提,可是操作完成以后却发现菜单没有被加载进来,寻找原因发现如下:WM的菜单比较特殊,首先菜单本身是一个窗体,拥有句柄(HWND)并且可以通过::showWindow()函数进行显示和隐藏,这就是menu bar;在创建一个新的窗体的时候,系统会默认创建一个空的menubar,例如在你刚刚创建的窗体上也是存在menubar的,只是上面只显示一

PuttyTree的专栏 1224

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Windows Mobile上的菜单

更多wince/wm相关请参考一下论坛 http://www.surfingcenter.cn/forumdisplay.php?fid=9, 也欢迎各位到该论坛提问答疑.1 菜单栏的创建(1) Win32 和 MFC 都适用的创建方式/*加载菜单到窗口, 并返回菜单窗口句柄uiMenuID 菜单资源IDpWnd 需要加载菜单的窗口返回值

2642

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

在Windows Mobile中动态修改菜单

1、创建并显示菜单,先在资源里添加菜单,然后如下代码 SHMENUBARINFO mbi; ZeroMemory(&mbi, sizeof(SHMENUBARINFO)); mbi.cbSize = sizeof(SHMENUBARINFO); mbi.hwndParent = m_hWnd; mbi.hInstRes = ::AfxGetInstanceHandle(); mbi.dwFlag

HelloKandy's Blog 851

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

玩转windows mobile菜单

v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);} Normal 0 7.8 磅 0 2

code09的专栏 1106

Windows Mobile窗口全屏总结(zhuan)

TO:ALL 经过细致研究和严格测试 负责任的给出《史上最全面的Windows Mobile窗口全屏总结》 开发和测试环境: VC2005 智能MFC 测试样机:dopod E616 ------------------------------------------------------------------- 第一点:全屏到底用什么API最好 在MSDN、网络资

aikker的专栏 727

windows mobile 开发总结--菜单

在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:1。创建并显示菜单,先在资源里添加菜单,然后如下代码SHMENUBARINFO mbi;ZeroMemory(&mbi, sizeof(SHMENUBARINFO));mbi.cbSize=sizeof(SHMENUBARINFO);mbi.hwndParent=m_hWnd;mbi.h

768

如何隐藏ppc的开始菜单?

我开发了一个行业软件,不想让用户使用ppc中自带的其他软件,系统是WM5.0  请问:     如何开机后将ppc运行界面完全隐藏,直接运行我所开发的软件?  如何隐藏开始菜单? 是修改注册表还是修改程序即可? 急待答复!!!

diaojiangzhuo3907的博客 236

Windows Mobile窗口全屏总结

Windows Mobile窗口全屏总结 TO:ALL 经过细致研究和严格测试 负责任的给出《史上最全面的Windows Mobile窗口全屏总结》 开发和测试环境: VC2005 智能MFC 测试样机:dopod E616 -------------------------------------------------------------------

tozheng的专栏 2137

windows mobile 6.5 隐藏 左下角(左上角)的开始按钮 叉号关闭按钮

原来的界面是这样的: windows mobile 6.0界面: windows mobile 6.5.X界面: 修改一个windows mobile上的注册表即可搞定(C#的修改方式,其他语言参考注册表键值修改方式即可): //隐藏开始菜单: Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"Software\

生于忧患,死于安乐 2893
上一篇: 【转】使窗体拥有透明效果的API
下一篇: Windows Mobile字节对齐问题
code09
博客等级 码龄18年 31粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值