MFC ownerdraw 菜单大小

MFC ownerdraw menu size

我想知道如何使用他自己的文本设置 ownerdraw CMenu 的大小。

查看文档:

void CColorMenu::MeasureItem(LPMEASUREITEMSTRUCT lpMIS)
{
   // all items are of fixed size
   lpMIS->itemWidth = COLOR_BOX_WIDTH;
   lpMIS->itemHeight = COLOR_BOX_HEIGHT;
}

但是使用这种方法,我的所有菜单都具有相同的大小。 我如何才能像标准 windows 菜单那样拥有菜单和子菜单的动态尺寸?

您必须通过 MEASUREITEMSTRUCT 中的给定信息来标识要绘制的项目。只需阅读 MSDN.

中的文档

对于菜单中的每一项,您都会收到此消息。