1. 程式人生 > >MFC Ribbon 動態新增按鈕

MFC Ribbon 動態新增按鈕

  想在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();