想在MFC Ribbon区域动态添加按钮,本想这是个简单的事,但是几经周折,费了好多时间。在网上没有找到有合适的示例,现在弄好了,发上来给大家分享下:
CMFCRibbonCategory *pCategory = m_wndRibbonBar.GetCategory(1);
CMFCRibbonPanel *pPanel = pCategory->GetPanel(3);
pPanel->Add(new CMFCRibbonButton(ID_EDIT_CLEAR, _T( "1"), 1,1));
pPanel->Add( new CMFCRibbonButton(ID_EDIT_CLEAR, _T( "2"), 2,2));
pPanel->Add( new CMFCRibbonButton(ID_EDIT_CLEAR, _T( "3"),3,3));
CRect rc = pPanel->GetRect();
pPanel->RecalcWidths(m_wndRibbonBar.GetDC(),rc.Height());
pCategory->ReposPanels(m_wndRibbonBar.GetDC());
m_wndRibbonBar.ForceRecalcLayout();