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

转载 2007年09月25日 00:02:00
前一段由于时间比较忙没有将解决办法贴给大家,本人也只是经过一整天摸索,才对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 
 

WIN32编程之.rc资源文件的使用

学习WIN32是否需要用VC?我的答案是:不是非要VC不可,其它IDE也可以用来学WIN32; 甚至我一度以为的学到时资源不得不用VC,目前看来只要稍微费点力气,了解一些.rc文件的东西,也是可以用其...
  • baidu_24190413
  • baidu_24190413
  • 2015年08月11日 23:51
  • 3526

《Windows程序设计》读书笔十 菜单和其他资源

第十章  菜单和资源 windows通过LoadIcon LoadCursor等函数来加载资源 图标 鼠标指针 字符串 自定义资源 菜单 键盘加速键 对话框 位图 10.1  图标,鼠标指...
  • sesiria
  • sesiria
  • 2016年07月14日 23:07
  • 1394

vs2013下,MFC单文档工程如何在菜单栏新增菜单,并添加响应函数

以前做练习时,经常使用MFC基于对话框,今天使用基于单文档
  • x_j_b
  • x_j_b
  • 2014年11月14日 16:19
  • 5878

Windows编程基础--第2节 win32程序资源管理

(操作系统:win10 64位 IDE:vc++ 6.0) windows程序都有自己的资源,例如按钮,图标,对话框等等,这节介绍如何使用win32程序资源管理; 1、继续使用上节的win32程...
  • qq_25549309
  • qq_25549309
  • 2017年10月18日 21:04
  • 2003

Win32汇编之使用资源--菜单和加速键

///我们在使用软件时可以看到菜单、图标、版本信息等,它们是可执行文件的组成     部分也是Windows中的不同类型的资源。这些资源并不在源码的数据段中定义,     而是单独放在一个节区中,需...
  • u012869992
  • u012869992
  • 2014年08月10日 19:45
  • 563

Win32汇编--如何使用资源 [菜单和加速键]

使用资源 —— 菜单和加速键     主菜单,顶层菜单,弹出式菜单,子菜单,右键弹出式菜单,系统弹出式菜单。菜单中的菜单项有好几种,从资源定义的角度来看,分隔用的横线也是一个菜单项,除横线...
  • cyg0810
  • cyg0810
  • 2012年07月18日 10:56
  • 3032

Win32程序资源的使用

作为一个可执行的应用程序文件,应该包含2部分,一部分是数据区,另一部分是程序代码区。数据区一般可分为2类:读写数据和只读数据。对于windows程序,有大量的只读数据。所谓资源就是应用程序运行期间通常...
  • q__y__L
  • q__y__L
  • 2016年05月18日 20:23
  • 1499

Win32的加速键与鼠标,系统菜单,资源加载

一 系统菜单   1 执行系统提供的窗口命令,例如最大化、关闭     等命令。本质上和普通菜单一样,所以我们也     可以在程序中使用这个菜单       2 系统菜单的使用    ...
  • zouyouliang1
  • zouyouliang1
  • 2015年03月26日 22:36
  • 574

小结一下win32 menu的使用:

// 首先需要定义菜单的ID #define IDM_FILE_NEW 40001 #define IDM_FILE_OPEN 40002 #define IDM_EDIT_COPY ...
  • zengraoli
  • zengraoli
  • 2013年03月13日 09:43
  • 2697

小结一下win32 menu的使用:

// 首先需要定义菜单的ID #define IDM_FILE_NEW 40001 #define IDM_FILE_OPEN 40002 #define IDM_EDIT_COPY ...
  • zengraoli
  • zengraoli
  • 2013年03月13日 09:48
  • 1571
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在Smartphone的Win32程序中使用Windows的通用菜单资源(MENU而不是SHMENUBAR)
举报原因:
原因补充:

(最多只允许输入30个字)