1 新建SDI
2 在视图菜单下面添加菜单-英文,ID为ID_ENGLISH
3 用文本打开项目下的资源文件
4 在对应的中文菜单下面添加下面的代码
IDR_MAINFRAME_ENGLISH MENU PRELOAD DISCARDABLE
BEGIN
POPUP "File(&F)"
BEGIN
MENUITEM "New(&N)\tCtrl+N", ID_FILE_NEW
MENUITEM "Open(&O)...\tCtrl+O", ID_FILE_OPEN
MENUITEM "Save(&S)\tCtrl+S", ID_FILE_SAVE
MENUITEM "Save as(&A)...", ID_FILE_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "Print(&P)...\tCtrl+P", ID_FILE_PRINT
MENUITEM "Print Preview(&V)", ID_FILE_PRINT_PREVIEW
MENUITEM "Print Setting(&R)...", ID_FILE_PRINT_SETUP
MENUITEM SEPARATOR
MENUITEM "Recent Files", ID_FILE_MRU_FILE1, GRAYED
MENUITEM SEPARATOR
MENUITEM "Exit(&X)", ID_APP_EXIT
END
POPUP "Edit(&E)"
BEGIN
MENUITEM "Undo(&U)\tCtrl+Z", ID_EDIT_UNDO
MENUITEM SEPARATOR
MENUITEM "Cut(&T)\tCtrl+X", ID_EDIT_CUT
MENUITEM "Copy(&C)\tCtrl+C", ID_EDIT_COPY
MENUITEM "Paste(&P)\tCtrl+V", ID_EDIT_PASTE
END
POPUP "View(&V)"
BEGIN
MENUITEM "ToolBar(&T)", ID_VIEW_TOOLBAR
MENUITEM "StatusBar(&S)", ID_VIEW_STATUS_BAR
MENUITEM "Chinese", ID_ENGLISH
END
POPUP "Help(&H)"
BEGIN
MENUITEM "About Test(&A)...", ID_APP_ABOUT
END
END
5 给CMainFrame添加成员变量
enum Enum{e,c}m_current;
CMenu m_englistmenu;
CMenu m_chinesemenu;
6 在CMainFrame的构造函数中添加
m_current=c;
7 在CMainFrame的OnCreate里面添加
m_englistmenu.LoadMenu("IDR_MAINFRAME_ENGLISH");
HMENU m_hMenu=::GetMenu(this->m_hWnd); // 保存中文菜单
m_chinesemenu.Attach(m_hMenu);
8 实现英文菜单命令消息
void CMainFrame::OnEnglish()
{
// TODO: 在此添加命令处理程序代码
if(m_current==e)
{
SetMenu(&m_chinesemenu);
m_current=c;
}
else
{
SetMenu(&m_englistmenu);
m_current=e;
}
}