我有一个资源:
IDC_MYMENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&xit"
END
POPUP "&Stuff"
BEGIN
MENUITEM "&Go"
END
END
在第一个 END 上它说有语法错误,我不明白为什么。有人知道吗?:(
我有一个资源:
IDC_MYMENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&xit"
END
POPUP "&Stuff"
BEGIN
MENUITEM "&Go"
END
END
在第一个 END 上它说有语法错误,我不明白为什么。有人知道吗?:(
问题是您没有为菜单项设置 ID。资源编译器需要字符串后面的附加参数。请参阅此处的文档:http: //msdn.microsoft.com/en-us/library/aa381025%28VS.85%29.aspx
您需要一个与菜单项关联的 ID,例如:
#include "resources.h"
#include "windows.h"
IDC_MYMENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "E&xit", ID_EXIT
END
POPUP "&Stuff"
BEGIN
MENUITEM "&Go", ID_GO
END
END
其中 resources.h 看起来像:
#define ID_GO 101
[东边没记错的话,ID_EXIT一般会由Windows.h预定义,所以你不需要定义。]
ID 是您的程序在选择该菜单项时将在 WM_COMMAND 消息中收到的值。这些值(几乎总是)在一个单独的标头中,供您包含在 RC 文件和代码中,以确保不会出现任何不匹配。