欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

VS2019, MFC 菜单以及菜单相关编程---标记菜单/缺省菜单项

程序员文章站 2022-05-01 14:48:53
...

1. Menu消息在各个类中的响应顺序:

view类->DOC 类->Frame类->APP 类

2.要实现标记菜单可以在 CMainFrame  OnCreate成员中进行。即在窗口创建完成之后,在OnCreate函数最后加入如下代码:

VS2019, MFC 菜单以及菜单相关编程---标记菜单/缺省菜单项

//GetMenu()->GetSubMenu(0)->CheckMenuItem(0, MF_BYPOSITION | MF_CHECKED);//设置菜单项check状态
	// Get the main window's menu
	CMenu* pMenu = GetMenu();

	// If there is a menu and it has items, we'll
	// delete the first one.
	if (pMenu != NULL && pMenu->GetMenuItemCount() > 0)
	{
		pMenu = pMenu->GetSubMenu(0);
		//pMenu->CheckMenuItem(0,MF_BYPOSITION | MF_CHECKED);
		//pMenu->CheckMenuItem(ID_FILE_NEW,MF_BYCOMMAND | MF_CHECKED);//通过菜单项ID 设置菜单项check状态
		//pMenu->DeleteMenu(0, MF_BYPOSITION);
		//pMenu->SetDefaultItem(1, TRUE);//设置默认菜单项,菜单项将以粗体显示
		pMenu->SetDefaultItem(ID_FILE_OPEN, FALSE);//通过ID号设置缺省菜单
		
	}

3. 分隔栏也要算一个菜单项,对于缺省菜单项,一个子菜单中只能有一个。

VS2019, MFC 菜单以及菜单相关编程---标记菜单/缺省菜单项

相关标签: MFC visual studio