C++ 删除“删除”;“自定义快速访问工具栏”;按钮

C++ 删除“删除”;“自定义快速访问工具栏”;按钮,c++,windows,mfc,C++,Windows,Mfc,我正在做一个项目,我们希望有一个不可更改/静态的快速访问栏。我们已经研究了从CMFCQuickAccessToolbar继承并删除该按钮,但是这些尝试似乎没有结果。仅仅去掉按钮就可以完全去掉工具栏。有没有人对此有经验,或者有其他方法?在经历了很多头痛之后,我们发现没有干净的解决方案可以只从工具栏上删除该按钮。相反,我们选择将要显示在选项卡组的快速访问栏中的按钮放置在选项卡组中。这些按钮将出现在右侧(word中帮助图标旁边)。为了复制QA按钮的外观,我必须创建一个imagelist并将我们的按钮加

我正在做一个项目,我们希望有一个不可更改/静态的快速访问栏。我们已经研究了从CMFCQuickAccessToolbar继承并删除该按钮,但是这些尝试似乎没有结果。仅仅去掉按钮就可以完全去掉工具栏。有没有人对此有经验,或者有其他方法?

在经历了很多头痛之后,我们发现没有干净的解决方案可以只从工具栏上删除该按钮。相反,我们选择将要显示在选项卡组的快速访问栏中的按钮放置在选项卡组中。这些按钮将出现在右侧(word中帮助图标旁边)。为了复制QA按钮的外观,我必须创建一个imagelist并将我们的按钮加载到其中

CImageList theList;
CBitmap bm;
bm.LoadBitmap( IDB_QASMALL );
theList.Create(16,16, ILC_COLOR32 | ILC_MASK, 5, 0);
theList.Add(&bm, RGB(192,192,192));
然后,我创建了ribbonButtons,并将其添加到tabs组,其中包含正确的命令ID、空文本和图像列表中正确的图标

CMFCRibbonButton* button = new CMFCRibbonButton( ID_SOMECOMMAND, _T("\na"), theList.ExtractIcon(<IconOffset>));
m_wndRibbonBar.AddToTabs(mp);
CMFCRibbonButton*button=newcmfcribbonbutton(ID\u SOMECOMMAND,\u T(“\na”),theList.ExtractIcon());
m_wndRibbonBar.AddToTabs(mp);

这不是一个完美的解决方案,但它至少给了我们一个类似的用户界面,而不用担心摆脱愚蠢的自定义按钮。您还可以自由地在按钮上使用标签。

在经历了大量的头痛之后,我们发现没有干净的解决方案可以仅从工具栏上删除该按钮。相反,我们选择将要显示在选项卡组的快速访问栏中的按钮放置在选项卡组中。这些按钮将出现在右侧(word中帮助图标旁边)。为了复制QA按钮的外观,我必须创建一个imagelist并将我们的按钮加载到其中

CImageList theList;
CBitmap bm;
bm.LoadBitmap( IDB_QASMALL );
theList.Create(16,16, ILC_COLOR32 | ILC_MASK, 5, 0);
theList.Add(&bm, RGB(192,192,192));
然后,我创建了ribbonButtons,并将其添加到tabs组,其中包含正确的命令ID、空文本和图像列表中正确的图标

CMFCRibbonButton* button = new CMFCRibbonButton( ID_SOMECOMMAND, _T("\na"), theList.ExtractIcon(<IconOffset>));
m_wndRibbonBar.AddToTabs(mp);
CMFCRibbonButton*button=newcmfcribbonbutton(ID\u SOMECOMMAND,\u T(“\na”),theList.ExtractIcon());
m_wndRibbonBar.AddToTabs(mp);
这不是一个完美的解决方案,但它至少给了我们一个类似的用户界面,而不用担心摆脱愚蠢的自定义按钮。您还可以自由使用按钮上的标签