0

リボン バーを利用する MFC アプリケーションを作成しており、そのほとんどをリボン エディターで設計しました。ただし、私のビューの 1 つは、プログラムでいくつかのボタンを追加する必要があり、それらの間にセパレーターを追加したいと考えています。

ただし、ビューを切り替えると、ボタンとセパレーターをプログラムで削除できるようにしたいのですが、どうすればよいかわかりません。これまでのところ、次のようなものがあります(疑似コード):

void AddButtons( CMFCRibbonBar& wndRibbonBar )
{
     // Get the relevant panel:
     CMFCRibbonCategory* pCategory = wndRibbonBar.GetCategory( 0 );
     CMFCRibbonPanel* pPanel = pCategory->GetPanel( 0 );

     // Insert the two buttons and add a separator:
     CMFCRibbonButton* pButton = new CMFCRibbonButton( ID_TESTBUTTON1, _T("Test1") );
     pPanel->Insert( pButton, 0 );
     pButton = new CMFCRibbonButton( ID_TESTBUTTON2, _T("Test2") );
     pPanel->Insert( pButton, 1 );

     pPanel->AddSeparator();
}

void RemoveButtons( CMFCRibbonBar& wndRibbonBar )
{
     // Get the relevant panel:
     CMFCRibbonCategory* pCategory = wndRibbonBar.GetCategory( 0 );
     CMFCRibbonPanel* pPanel = pCategory->GetPanel( 0 );

     // Remove the two buttons:
     pPanel->Remove( 1, TRUE );
     pPanel->Remove( 0, TRUE );

     // ToDo: Delete the separator:
}

セパレーターを削除するために呼び出すことができる関数はありますか、それとも通常のリボン要素として扱う必要がありますか?

前もって感謝します!

4

1 に答える 1