3.3.2 制作菜单
菜单是Windows程序的重要组成部分。一个受用户欢迎的应用程序必然需要有一个好的菜单设计。Visual C++(www.cppentry.com) 6.0提供了强大的菜单编辑器,开发者可以很方便地创建菜单资源。下面就一步步地介绍如何创建和加载一个菜单资源。
步骤1:单击Insert菜单中的Resource命令。如图3-11所示。
步骤2:弹出的【Insert Resource】对话框如图3-12所示。在左边的列表框中选择Menu选项,然后单击New按钮。此时在资源列表中就出现了一个新的菜单资源IDR_MENU1,如图3-13所示。
|
| 图3-11 单击Insert菜单中的Resource命令 |
 |
| 图3-12 【Insert Resource】对话框 |
步骤3:在右边的资源编辑器中,如图3-14所示,双击需要加入菜单的区域,此时会弹出“菜单属性对话框”。
步骤4:在“菜单属性对话框”(见图3-15)中,可以设定菜单的命令ID和菜单的标题。菜单的命令ID在点击菜单的时候成为WM_COMMAND消息的参数被传递给窗口过程。
|
| 图3-13 资源列表 |
|
| 图3-14 菜单资源编辑器 |
 |
| 图3-15 菜单属性对话框 |
步骤5:加载菜单。加载菜单可以在注册窗口类的时候给lpszMenuName字段赋值为(LPCTSTR)IDR_MENU1来实现,但以这个窗口类生成的窗口都会拥有同样的菜单,如果要为不同的窗口定制不同的菜单,那就应该在创建窗口时为窗口指定菜单,代码如下:
hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, LoadMenu(hInstance, (LPCTSTR)IDR_MENU1), hInstance, NULL); |
在用CreateWindow 创建窗口时用LoadMenu函数装入菜单,并把菜单句柄返回给CreateWindow。LoadMenu的函数原型如下:
HMENU LoadMenu( HINSTANCE hInstance, // 应用程序句柄 LPCTSTR lpMenuName // 菜单资源标志符 ); |
它的两个参数很简单,分别是:
hInstance:菜单资源所在的应用程序的句柄。
lpMenuName:菜单资源的名称。
创建窗口完成之后,就可以使用自己的窗口应用程序拥有一个漂亮的菜单界面。
【责任编辑:
雪花 TEL:(010)68476606-8007】