十一 24 2006
Menu Bar on Windows Mobile
总结一下 MS WM 上莫名其妙的、非常不爽的 Menu Bar API:
SHCreateMenuBar:在 SP2003 中不支持SHCMBF_HMENU参数创建,PPC2003 WM5PPC WM5SP 均支持,即不需要 RCDATA 即可创建 MenuBar 非常方便,不仅不需要 RCDATA,String Resource 也省了。
SHCMBM_GETMENU:在 WM5PPC 中不支持此消息(除非使用 SHCMBF_HMENU 创建且 Top Level Menu Item 大于 2,但此时 Menu Bar 就成了 PPC2003 的外观了)。其他平台上 PPC2003、SP2003、WM5SP 均支持此消息。代替方案是 SHCMBM_GETSUBMENU,但是这样将无法获取一个 Root Level 的 HMENU,痛苦!
Google 一下,问这类问题的人真多,给通用性程序的API选择带来非常麻烦的问题。再次说声:莫名其妙!
有更好的解决方法的,不妨说一声。
十二 06, 2009 @ 00:54:17
刚也遇到了这问题

纠结了半天, 结果还是用
#if _WIN32_WCE == 0×420
来区别对待了
七 10, 2008 @ 12:03:08
有用~很有用
十二 22, 2006 @ 10:34:26
不都说,微软认为在WM5上的MenuBar是ToolBar了,所以他就不再是MenuBar了…
十二 11, 2006 @ 09:45:10
发现问题
我用1.2正式版在696WM5系统上拨号时,发现方向键左边的绿色拨号键无法使用:
例如:拨 12121,使用软件键盘可以拨出,但用绿色的硬键无法拨出。