功能区按钮可以包含项目。但就我所知,他们只接受小图像。我正在尝试将大图像添加到这些子项目中。
有谁知道如何做到这一点?
谢谢,
修改
答案 0 :(得分:2)
在菜单子项中使用SetAlwaysLargeImage()成员函数,这些子项通常是CMFCRibbonButtons本身:
std::auto_ptr<CMFCRibbonButton> apBtn3(new CMFCRibbonButton(ID_RIBBON_BTN_3, _T("Split Button"), 2, 2));
apBtn3->SetMenu(IDR_RIBBON_MENU_1, TRUE);
apBtn3->SetAlwaysLargeImage();
apBtn3->RemoveSubItem(0);
std::auto_ptr<CMFCRibbonButton> apSubButton(new CMFCRibbonButton(ID_RIBBON_MBTN_1, _T("Item 1"), 2, 2)); // <-- !!!
apSubButton->SetAlwaysLargeImage(); // <-- !!!
apBtn3->AddSubItem(apSubButton.release(), 0); // <-- !!!
pPanel1->Add(apBtn3.release());
(来自RibbonGadgets示例的修改代码)
答案 1 :(得分:1)
这似乎是CMFCRibbonGallery,而不是CMFCRibbonButton。代码示例:
pPanel1->Add(new CMFCRibbonGallery(ID_RIBBON_PBTN_1, _T("Embedded"), 0, 0, IDB_RIBBON_PALETTE_1, 64));
CMFCRibbonGallery* pBtn2 = new CMFCRibbonGallery(ID_RIBBON_PBTN_2, _T("Button"), 1, 1, IDB_RIBBON_PALETTE_1, 64);
pBtn2->SetButtonMode();
pBtn2->SetAlwaysLargeImage();
pPanel1->Add(pBtn2);
(取自RibbonGadgets示例)
[编辑:这是错误的答案。检查(和upvote)我的另一个答案。我只留下这一个未删除以表达意见。]