企业智能化解决方案服务商

BCGControlBar教程:可视化管理器

翻译 使用教程 | 编辑:当归 | 2018-12-05 09:22:38| 阅读 0 有用 (0) 评论 (0) 收藏


概述:BCGControlBar库框架能创建各种应用程序“skins”并轻松更改用户界面元素的外观,用户可以轻松实现自定义主题。

BCGControlBar库框架能创建各种应用程序“skins”并轻松更改用户界面元素的外观。 虽然该产品具有超过25个预先构建的视觉主题,但用户可以轻松实现自定义主题。

在下图中,可以看到从“BCGPMediaPlayer”和“BCGPMSMoneyDemo”示例中截取的屏幕截图:

BCG

该框架维护CBCGPVisualManager类的全局对象,默认情况下绘制以下GUI元素:

  • 条形边框(OnDrawBarBorder)
  • 棒夹(OnDrawBarGripper)
  • 按钮边框(OnDrawButtonBorder)
  • 标题按钮(OnDrawCaptionButton)
  • 菜单边框(OnDrawMenuBorder)
  • 分隔符(OnDrawSeparator)
  • 填充栏背景(OnFillBarBackground)
  • 填充按钮内部(OnFillButtonInterior)
  • 突出显示菜单项(OnHighlightMenuItem)

每个元素由单独的虚函数显示。

要实现自己的皮肤,应该执行以下步骤:

  1. 从CBCGPVisualManager类派生自己的类。
  2. 对于要自定义其外观的每个GUI元素,将覆盖相关的绘图功能。
  3. CBCGPVisualManager对象是一个单例。如果要实例化可视化管理器对象,则应删除以前的实例。使用CBCGPVisualManager :: GetInstance静态函数来访问当前实例。

以下示例显示如何在默认和自定义可视管理器之间切换:

void CMyApp::SetCustomTheme(int iThemeIndex)
{
    switch (iThemeIndex)
    {
    case OFFICE_2016_CUSTOM_THEME:
        // CMyOffice2016Theme is derived from CBCGPVisualManager2016 class
        SetVisualTheme(BCGP_VISUAL_THEME_OFFICE_2016_COLORFUL, 
            RUNTIME_CLASS(CMyOffice2016Theme);
        break; 

    case VS_2017_CUSTOM_STYLE:
        // CMyVS2017Theme is derived from CBCGPVisualManagerVS2013 class
        SetVisualTheme(BCGP_VISUAL_THEME_VS_2013_BLUE, 
            RUNTIME_CLASS(CMyVS2017Theme);
        break; 
    }
}

 

购买BCGSoft正版授权,请点击“咨询在线客服”哟!


本站文章除注明转载外,均为本站原创或翻译。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
文章转载自:

用户评论: 您的宝贵经验,能为更多人带来帮助,登录后才能评论。
评论加载中...