温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

VS Ribbon命令按钮的示例分析

发布时间:2021-12-30 16:26:50 来源:亿速云 阅读:120 作者:小新 栏目:编程语言

小编给大家分享一下VS Ribbon命令按钮的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Visual C++还是比较常用的,于是我研究了一下VS Ribbon命令按钮,在这里拿出来和大家分享一下,希望对大家有用。到现在为止,我们已经按照菜单式界面的开发流程,完成了资源的编辑和消息函数的实现。如果这时我们编译运行解决方案,我们在程序界面上看不到任何变化,因为我们还没有把这些命令绑定到Ribbon Bar的命令按钮上。在CMainFrame类中,它提供了一个专门的函数CMainFrame::InitializeRibbon()来完成 Ribbon界面的初始化工作,所以,我们在这个函数中添加如下代码,创建新的命令分组,然后将命令按钮映射到我们刚刚创建的菜单项。

  1. void CMainFrame::InitializeRibbon()  

  2. {  

  3. BOOL bNameValid;  

  4. ///…  

  5. //////////////////////////////////////////////////////////////  

  6. // 添加一个命令分组(Category)“RibbonUI Category”  

  7. CMFCRibbonCategory *pRibbonUICategory =  

  8. m_wndRibbonBar.AddCategory(_T("RibbonUI Category"),  

  9. IDB_WRITESMALL, IDB_WRITELARGE);  

  10.  

  11. // 添加一个面板(Panel)  

  12. CMFCRibbonPanel *pTestPanel = pRibbonUICategory->
    AddPanel(_T("RibbonUI Panel"), m_PanelImages.ExtractIcon(1));  

  13.  

  14. // 在面板上添加Ribbon命令按钮(CMFCRibbonButton)  

  15. pTestPanel->Add(new CMFCRibbonButton(ID_EDIT_SAYHELLO, _T("Say Hello"), 0, 0));  

  16. pTestPanel->Add(new CMFCRibbonButton(ID_EDIT_SAYHELLO, _T("Say Hello"), 1));  

  17. pTestPanel->Add(new CMFCRibbonButton(ID_EDIT_SAYGOODBYE, _T("Say Goodbye"), 2));  

  18. //////////////////////////////////////////////////////////////  

  19. ///…  

在这段代码中,我们首先利用Ribbon Bar的AddCategory()函数,添加了一个新的命令分组(Category),也就是Ribbon Bar上的一个新的标签页。然后,我们在这个新创建的标签页中,添加了一个新的面板(Panel)。***,我们创建了三个VS Ribbon命令按钮 (CMFCRibbonButton),并将它们放置到面板中。通过指定跟菜单资源中的菜单项相同的资源ID,我们将这些VS Ribbon命令按钮跟我们之前创建的菜单项一一对应起来。当我们点击某个VS Ribbon命令按钮时,就会执行相应的菜单命令响应函数。这样,我们就实现了菜单命令在Ribbon Bar的绑定,同时在界面上也能看到我们刚刚添加的命令按钮了。

以上是“VS Ribbon命令按钮的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI