Mfc 具有大图像的功能区按钮项
功能区按钮中可以包含项目。但据我所知,他们只接受小图片。我正在尝试向这些子项添加大型图像 有人知道如何做到这一点吗 谢谢 编辑:Mfc 具有大图像的功能区按钮项,mfc,ribbon,Mfc,Ribbon,功能区按钮中可以包含项目。但据我所知,他们只接受小图片。我正在尝试向这些子项添加大型图像 有人知道如何做到这一点吗 谢谢 编辑: 这似乎是一个CMFCRibbonGallery,而不是一个CMFCRibbonButton。代码示例: pPanel1->Add(new CMFCRibbonGallery(ID_RIBBON_PBTN_1, _T("Embedded"), 0, 0, IDB_RIBBON_PALETTE_1, 64)); CMFCRibbonGallery* pBtn2
这似乎是一个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);
(取自Ribbongadget样本)
[编辑:这是错误的答案。请检查(并向上投票)我的其他答案。我只保留这一个未删除的答案,以尊重评论。]这似乎是一个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);
(取自Ribbongadget样本)
[编辑:这是错误的答案。请检查(并向上投票)我的其他答案。我只保留这一个未删除的答案,以尊重评论。]这似乎是一个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);
(取自Ribbongadget样本)
[编辑:这是错误的答案。请检查(并向上投票)我的其他答案。我只保留这一个未删除的答案,以尊重评论。]这似乎是一个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);
(取自Ribbongadget样本)
[编辑:这是错误的答案。请检查(并向上投票)我的另一个答案。我只保留这一个未删除的答案,以尊重评论。]使用菜单子项中的setAlwaysArgeImage()成员函数,这些子项通常是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());
std::auto_ptr apBtn3(新的CMFCribbon按钮(ID_RIBBON_BTN_3,_T(“拆分按钮”),2,2));
apBtn3->设置菜单(IDR功能区菜单1,真);
apBtn3->SetAlwaysLargeImage();
apBtn3->RemoveSubItem(0);
std::auto_ptr apSubButton(新的CMFCRibbon按钮(ID_RIBBON_MBTN_1,_T(“项目1”),2,2));//setAlwaysRangeImage();//添加子项(apSubButton.release(),0);//添加(apBtn3.release());
(修改了RibbonGadgets示例中的代码)在菜单子项中使用setAlwaysRangeImage()成员函数,这些子项通常是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());
std::auto_ptr apBtn3(新的CMFCribbon按钮(ID_RIBBON_BTN_3,_T(“拆分按钮”),2,2));
apBtn3->设置菜单(IDR功能区菜单1,真);
apBtn3->SetAlwaysLargeImage();
apBtn3->RemoveSubItem(0);
std::auto_ptr apSubButton(新的CMFCRibbon按钮(ID_RIBBON_MBTN_1,_T(“项目1”),2,2));//setAlwaysRangeImage();//添加子项(apSubButton.release(),0);//添加(apBtn3.release());
(修改了RibbonGadgets示例中的代码)在菜单子项中使用setAlwaysRangeImage()成员函数,这些子项通常是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());
std::auto_ptr apBtn3(新的CMFCribbon按钮(ID_RIBBON_BTN_3,_T(“拆分按钮”),2,2));
apBtn3->设置菜单(IDR功能区菜单1,真);
apBtn3->SetAlwaysLargeImage();
apBtn3->RemoveSubItem(0);
std::auto_ptr apSubButton(新的CMFCRibbon按钮(ID_RIBBON_MBTN_1,_T(“项目1”),2,2));//setAlwaysRangeImage();//添加子项(apSubButton.release(),0);//添加(apBtn3.release());
(修改了RibbonGadgets示例中的代码)在菜单子项中使用setAlwaysRangeImage()成员函数,这些子项通常是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());
std::auto_ptr apBtn3(新的CMFCribbon按钮(ID_RIBBON_BTN_3,_T(“拆分按钮”),2,2));
apBtn3->设置菜单(IDR功能区菜单1,真);
apBtn3->SetAlwaysLargeImage();
apBtn3->RemoveSubItem(0);
std::auto_ptr apSubButton(新的CMFCRibbon按钮(ID_RIBBON_MBTN_1,_T(“项目1”),2,2));//setAlwaysRangeImage();//添加子项(apSubButton.release(),0);//添加(apBtn3.release());
(修改了RibbonGadgets示例中的代码)谢谢thomiel,据我所知,gallery项目是图像,可以是大图像。但是,除非文本在位图中,否则不能像上面的图片那样为每个项目指定标题。是这样吗?而使用CMFCRibbonButton,子项可以沿着图像获取标题。只有图像必须是小的。所以我想知道是否有一种方法可以使CMFCRibbonButton子项也获得大图像。你可能是对的。所以,再给我一次机会……:)我确实将VS2008与功能包一起使用。据我所知,VS2010有一个丝带设计师,但我不知道这是一个好的。谢谢托米尔,据我所知,画廊项目是图像,可以是大的。但是,除非文本在位图中,否则不能像上面的图片那样为每个项目指定标题。是这样吗?而使用CMFCRibbonButton,子项可以沿着图像获取标题。只有图像必须是小的。所以我想知道是否有一种方法可以使CMFCRibbonButton子项也获得大图像。你可能是对的。所以,再给我一次机会……:)我确实将VS2008与功能包一起使用。据我所知,VS2010有一个丝带设计师,但我不知道这是一个好的。谢谢托米尔,据我所知,画廊项目是图像,可以是大的。但是,除非文本在位图中,否则不能像上面的图片那样为每个项目指定标题。是这样吗?而使用CMFCRibbonButton,子项可以沿着图像获取标题。只有图像必须是小的。所以我想知道是否有一种方法可以使CMFCRibbonButton子项也获得大图像。你可能是对的。所以,再给我一次机会……:)我确实将VS2008与功能包一起使用。据我所知,VS2010有一个丝带设计师,但我不知道这是一个好的。谢谢托米尔,据我所知,画廊项目是图像,可以是大的。但是,除非文本在位图中,否则不能像上面的图片那样为每个项目指定标题。是这样吗?而使用CMFCRibbonButton,子项可以沿着图像获取标题。只有图像必须是小的。所以我想知道是否有一种方法可以使CMFCRibbonButton子项也获得大图像。你可能是对的。所以,再给我一次机会……:)我确实将VS2008与功能包一起使用。据我所知,VS2010有一个丝带设计师,但我不知道它是一个好的。太棒了!通过ribbon xml元素属性也可以实现这一点