您的位置:首页 > 编程语言 > PHP开发

如何在Smartphone的Win32程序中使用Windows的通用菜单资源(MENU而不是SHMENUBAR)

2007-09-25 00:02 411 查看
前一段由于时间比较忙没有将解决办法贴给大家,本人也只是经过一整天摸索,才对SHMENUBAR资源有些了解,现将源代码放出,希望对大家在写菜单程序的时候能有所帮助。

VS 2005 里生成的资源文件分为两部分,一个*.rc,一个*.rc2,在*.rc2中有一个SHMENUBAR的资源,我们可以将这个资源和普通菜单资源建立关联,下面是某个*.rc2资源里的一段代码,我加了注释:

/////////////////////////////////////////////////////////////////////////////
//
// Data
//

IDR_MENUBAR SHMENUBAR DISCARDABLE
BEGIN
IDR_MENU, // 与之对应的Windows菜单资源的ID
2, // 主菜单个数

// 子菜单1
I_IMAGENONE, // 应该是菜单位图的标志(没用到,应该是BITMAP的ID),
IDM_OPEN, // SHMENUBAR 资源的ID
TBSTATE_ENABLED, // 菜单项的最初状态
TBSTYLE_BUTTON | TBSTYLE_AUTOSIZE, // 菜单的样式
// TBSTYLE_BUTTON 表示没有子项
// TBSTYLE_DROPDOWN 为包含子菜单的项
// TBSTYLE_AUTOSIZE为自动调整大小
IDS_OPEN, // 与菜单的文字对应的字符串资源中的ID
0, // 这个“0”一直也没搞懂
NOMENU, // 这个菜单项对应的Windows菜单资源中的从0开始的索引(NOMENU为-1,表示没有子菜单)

// 子菜单2
I_IMAGENONE,
IDM_OPTIONMENU,
TBSTATE_ENABLED,
TBSTYLE_DROPDOWN | TBSTYLE_AUTOSIZE,
IDS_OPTION, 0, 1,

END

好,知道这些功能就可以很容易和 Windows 菜单建立关联了。

谢谢大家的支持,如果有什么问题可以给我发邮件,或者MSN,我们一块来研究解决
whikiey@hotmail.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: