我正在寻找CMFCRibbonPanel
从CMFCRibbonCategory
. 中只有AddPanel()
函数CMFCRibbonCategory
,没有RemovePanel()
。
我真的需要重建我的整体CMFCRibbonCategory
来做到这一点吗?
只是为了澄清,我想要的是从类别中删除面板本身,而不是从面板中删除元素。
我正在寻找CMFCRibbonPanel
从CMFCRibbonCategory
. 中只有AddPanel()
函数CMFCRibbonCategory
,没有RemovePanel()
。
我真的需要重建我的整体CMFCRibbonCategory
来做到这一点吗?
只是为了澄清,我想要的是从类别中删除面板本身,而不是从面板中删除元素。
就我而言,我最终确实从头开始重建了该类别。在CMFCRibbonCategory
源代码(查找afxribboncategory.cpp
)中,没有明显的方法可以从面板数组中删除面板。
CMFCRibbonPanel
我对和一无所知CMFCRibbonCategory
。在 MSDN 中看到类声明后,我认为您可以获得对CMFCRibbonPanel
from的引用CMFCRibbonCategory
并调用CMFCRibbonPanel::RemoveAll
指针。
CMFCRibbonCategory *pCategory = m_wndRibbonBar.GetCategory(0);
if (pCategory)
{
CMFCRibbonPanel *pPanel = pCategory->GetPanel(0);
if (pPanel)
{
pPanel->RemoveAll();
m_wndRibbonBar.AdjustSizeImmediate();
}
}