2011-09-20 45 views
1

我想一个菜单添加到CMFCToolbar。以下建议我在网上找到,我这样做︰添加下拉菜单按钮,一个CMFCToolbar

CMenu m_Menu; 

m_Menu.LoadMenu(IDR_MYMENU); 

m_Toolbar.ReplaceButton ( ID_DOTHISWHENCLICKED, 
       CMFCToolBarMenuButton( ID_DOTHISWHENCLICKED, 
          m_Menu, 
          10, 
          nullptr, 
          FALSE)); 

因此,上述给我一个按钮,一个下拉箭头。当我点击按钮时,它会执行动作ID_DOTHISWHENCLICKED。当我点击下拉箭头时,我会看到一个包含一个项目的菜单。该项目是IDR_MYMENU的标题,这有一个子菜单,我想要显示的菜单。事情是这样的:

[BUTTON]

我的菜单

Submenu Item 1 

Submenu Item 2 

Submenu Item 3 

显然是我希望看到的是:

[BUTTON]

子菜单项目1

子菜单项目2

子菜单项3

所以我的问题是......为什么菜单中的IDR_MYMENU菜单项不是全部,而是在子菜单中关闭它?

谢谢。

回答

1

此问题是简单地通过使在固定.GetSubMenu(0) - > GetSafeHmenu(),而不是在CMenu的问题,创造了菜单按钮时。为什么这应该是这样对我来说是一个完整的谜,以及你知道的那些MFC'isms之一。

不知道是否要删除这个问题或打勾万一别人永远解决了这个问题。

相关问题