MFC 上的 CMenu 边框颜色
CMenu border color on MFC
我有一个 class 继承自 CMenu Owner draw menu
使用这个 class 菜单正确显示,但是,例如,当您打开菜单 FILE 时,您将看到标准菜单颜色的边框和分隔符
我怎样才能把这部分也画成想要的颜色?
在图像下方,您可以看到具有所选颜色(绿色)的文件子菜单和 borders/spacers
上的标准 windows 灰色菜单
使用菜单示例,这可以通过 "AddSubMenus" 函数中的这些代码行实现
MENUINFO MenuInfo = { 0 };
MenuInfo.cbSize = sizeof(MENUINFO);
GetMenuInfo(&MenuInfo);
MenuInfo.hbrBack = ::CreateSolidBrush(RGB(0, 0, 0));
MenuInfo.fMask = MIM_BACKGROUND | MIM_STYLE;
MenuInfo.dwStyle = MIM_APPLYTOSUBMENUS;
SetMenuInfo(&MenuInfo);
tmpmenu.SetMenuInfo(&MenuInfo);
我有一个 class 继承自 CMenu Owner draw menu
使用这个 class 菜单正确显示,但是,例如,当您打开菜单 FILE 时,您将看到标准菜单颜色的边框和分隔符
我怎样才能把这部分也画成想要的颜色?
在图像下方,您可以看到具有所选颜色(绿色)的文件子菜单和 borders/spacers
上的标准 windows 灰色菜单使用菜单示例,这可以通过 "AddSubMenus" 函数中的这些代码行实现
MENUINFO MenuInfo = { 0 };
MenuInfo.cbSize = sizeof(MENUINFO);
GetMenuInfo(&MenuInfo);
MenuInfo.hbrBack = ::CreateSolidBrush(RGB(0, 0, 0));
MenuInfo.fMask = MIM_BACKGROUND | MIM_STYLE;
MenuInfo.dwStyle = MIM_APPLYTOSUBMENUS;
SetMenuInfo(&MenuInfo);
tmpmenu.SetMenuInfo(&MenuInfo);