彩票走势图

VC界面开发工具Toolkit Pro教程:如何自定义Office样式工具栏和菜单

翻译|使用教程|编辑:鲍佳佳|2020-10-09 13:26:37.940|阅读 332 次

概述:以下是有关如何为应用程序工具栏和应用程序菜单添加添加自定义设置的教程。本教程假定您已经创建了使用Office样式的工具栏和菜单的应用程序。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

Xtreme Toolkit Pro是MFC开发中最全面界面控件套包,它提供了Windows开发所需要的11种主流的Visual C++ MFC控件,包括Command Bars、Controls、Chart Pro、Calendar、Docking Pane、Property Grid、Report Control、Shortcut Bar、Syntax Edit、Skin Framework 和Task Panel。如果对产品感兴趣的话欢迎下载Xtreme Toolkit Pro最新试用版! 点击获取更多免费Xtreme Toolkit Pro教程、视频、示例!

【同类产品推荐】

  • BCGControlBar Professional Edition for MFC | 下载试用: 是一个MFC扩展库,使您可以创建具有完全自定义的选项以及一组专业设计的丰富Microsoft Office和Microsoft Visual Studio的应用程序 GUI控件,例如图表、日历、网格、编辑器、甘特图和许多其他控件。
  • BCGControlBar for .NET | 下载试用 :包含有大量高度自定义、完全可设计的.NET界面控件,用户可以使用这些来创建精致美观的图形用户界面。

以下是有关如何为应用程序工具栏和应用程序菜单添加添加自定义设置的教程。本教程假定您已经创建了使用Office样式的工具栏和菜单的应用程序。

添加工具栏和菜单的自定义

1.将XTP_ID_CUSTOMIZE的ON_COMMAND添加到CMainFrame的消息映射中。这将处理工具栏和菜单自定义对话框的设置和显示。

MainFrm.cpp:

BEGIN_MESSAGE_MAP(CMainFrame,CMDIFrameWnd)
// {{AFX_MSG_MAP(CMainFrame)
ON_WM_CREATE()
//}} AFX_MSG_MAP
ON_COMMAND(XTP_ID_CUSTOMIZE,OnCustomize)
END_MESSAGE_MAP()
MainFrm.h:
// {{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 
//}} AFX_MSG 
afx_msg void OnCustomize();
DECLARE_MESSAGE_MAP()
2.为OnCustomize函数添加主体:
void CMainFrame::OnCustomize()
{
    // Get a pointer to the Command Bar object.
    CXTPCommandBars* pCommandBars = GetCommandBars();
    if(pCommandBars != NULL)
    {
        // Instantiate the customize dialog object.
        CXTPCustomizeSheet dlg(pCommandBars);

        // Add the options page to the customize dialog.
        CXTPCustomizeOptionsPage pageOptions(&dlg);
        dlg.AddPage(&pageOptions);

        // Add the commands page to the customize dialog.
        CXTPCustomizeCommandsPage* pCommands =
        dlg.GetCommandsPage();
        pCommands->AddCategories(IDR_MDISAMTYPE);

        // Use the command bar manager to initialize the 
        // customize dialog.
        pCommands->InsertAllCommandsCategory();
        pCommands->InsertBuiltInMenus(IDR_MDISAMTYPE);
        pCommands->InsertNewMenuCategory();

        // Display the dialog.
        dlg.DoModal();
    }
}

3.添加LoadCommandBars(_T(“ CommandBars”)); 到CMainFrame的OnCreate函数。这将恢复工具栏和菜单的先前状态以及所做的任何自定义。

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    ...

        // Load the previous state for toolbars and menus.
        LoadCommandBars(_T("CommandBars"));

    return 0;
}

4.将OnClose消息处理程序添加到CMainFrame并添加SaveCommandBars(_T(“ CommandBars”)); 在调用基类之前。这将保存工具栏和菜单的当前状态以及所做的任何自定义。

 void CMainFrame::OnClose()
 {
     // Save the current state for toolbars and menus.
     SaveCommandBars(_T("CommandBars"));
     CMDIFrameWnd::OnClose();
 }



今天的内容就是这些了,下载最新版Xtreme ToolKit Pro并在下方评论区分享您对该产品的想法。您的反馈意见可帮助我们在以后的更新中找到正确的方向,慧都作为Codejock的正版代理商现Xtreme ToolKit Pro正版授权最高立减2000元! Xtreme Command Bars在线订购最低仅需1105元!


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP