如何在已有的VC++工程中使用BCG界面库?

本文以MDI应用程序为例说明如何在已有的VC++工程中使用BCG界面库,我的开发环境为VS2003。

1、将BCG/BCGCBPro目录路径添加到“项目属性->C/C++ ->常规 ->附加包含目录”中,同时将BCG/Bin目录路径添加到“项目属性->链接器 ->常规 ->附加库目录”中。

2、确保在CWinApp派生类(设为CMyApp)的InitInstance()成员函数中调用AfxOleInit();

3、在ExitInstance()函数中添加:

CleanState();
BCGCBProCleanUp();

4、在stdafx.h中添加

#include "bcg/BCGCBProInc.h"

5、为CMyApp添加基类,如下:

class CMyApp:public CWinApp,public CBCGPWorkspace

6、设置个性化的数据在注册表中的存放位置和需要个性化的特性。在CMyApp::InitInstance()函数中添加:

SetRegistryBase(_T("Settings"));

InitMouseManager();
InitContextMenuManager();
InitKeyboardManager();

7、将CMDIFrameWnd 修改为 CBCGPMDIFrameWnd,注意MainFrm.h和MainFrm.cpp中的所有CMDIFrameWnd都要改。

8、将CMDIChildWnd改成CBCGPMDIChildWnd,.h和.cpp中的都要改。

9、将CToolBar m_wndToolBar修改成CBCGPToolBar m_wndToolBar,并在你的CMainFrame类中添加一个CBCGPMenuBar类型的成员m_wndMenuBar,如下示:

CBCGPMenuBar    m_wndMenuBar;     // New menu bar
CBCGPToolBar      m_wndToolBar;      // Application toolbar

10、为使菜单条生效并且可停靠,在CMainFrame::OnCreate()函数中添加以下内容:

 if (!m_wndMenuBar.Create (this)){
      TRACE0("Failed to create menubar\n");
      return -1;      // fail to create
    }

 m_wndMenuBar.SetBarStyle(m_wndMenuBar.GetBarStyle() |
                              CBRS_TOOLTIPS | CBRS_FLYBY |

  CBRS_SIZE_DYNAMIC);

m_wndMenuBar.EnableDocking (CBRS_ALIGN_ANY);
    DockControlBar (&m_wndMenuBar);

说明:你可以在你的应用程序中使用多个CBCGPToolBar,它们对应的位图将会自动地合并在一张位图上,然而,你只可以使用一个CBCGPMenuBar对象。

至此基本设置已经完成,此时你的程序应该可以正常地编译运行。下面介绍如何为应用程序设置不同的风格。

11、在菜单栏上添加一个弹出菜单,在其中添加一个菜单项,上面的文字分别为"Office 2003","Office 2007(blue)","Office 2007(black)","Office 2007(silver)","Office 2007(aqua)",对应的菜单项ID分别为ID_VIEW_APPLOOK_2003,ID_VIEW_APPLOOK_2007_1,,ID_VIEW_APPLOOK_2007_2,ID_VIEW_
APPLOOK_2007_3,ID_VIEW_APPLOOK_2007_4。

12、为这五个菜单添加消息响应:

在MainFrm.cpp文件中,添加消息映射(在BEGIN_MESSAGE_MAP和END_MESSAGE_MAP之间):

ON_COMMAND_RANGE(ID_VIEW_APPLOOK_2003, ID_VIEW_APPLOOK_2007_4, OnAppLook)

在CMainFrame类中添加OnAppLook函数声明:

afx_msg void OnAppLook(UINT id);

添加其方法实现:

void CMainFrame::OnAppLook(UINT id){
         CWaitCursor wait;

  CBCGPVisualManager2007::SetCustomColor ((COLORREF)-1);

         switch (id){
   case ID_VIEW_APPLOOK_2003:CBCGPVisualManager::SetDefaultManager(

RUNTIME_CLASS (CBCGPVisualManager2003));
    break;

case ID_VIEW_APPLOOK_2007_1:

 CBCGPVisualManager2007::SetStyle (CBCGPVisualManager2007::VS2007_Aqua);

 CBCGPVisualManager::SetDefaultManager (
    RUNTIME_CLASS (CBCGPVisualManager2007));

break; 

               ...

         }
          RedrawWindow (NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW |               

       RDW_FRAME | RDW_ERASE);

        }

     Office 2007其它的风格样式切换类似ID_VIEW_APPLOOK_2007_1,在此省略。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BCGControlBarPro.v12.00完整源代码(含资源汉化帮助文件和VS2008文向导)第三部分 使用方法: 1、解压至C:\Program Files目录下(密码:xiaoqing); 2、双击导入注册表C:\Program Files\BCGSoft\BCGControlBarPro\bcgcontrolbarpro.12.00.reg; 3、运行向导C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBProIntegrationWizard.exe。 与其它不同之处: 1、包含完整的源代码、帮助文件; 2、已经对 BCGPAppWizard2005 的向导进行汉化,在 Visual Studio 2008 使用文向导 BCGPAppWizard (参考 Visual Studio 2008 原有的文向导,如果您想学习汉化向导,参考目录是:C:\Program Files\Microsoft Visual Studio 9.0\VC\VCWizards\AppWiz\MFC\Application\templates\2052) 关于静态链接: 1、首先必须在运行向导BCGCBProIntegrationWizard.exe时已经编译静态; 2、在 Visual Studio 建立项目向导时,选择静态链接即可。 关于使用 Office2007、2010 风格: 如果您使用了这些新风格,必须在项目包括这些资源,否则 debug 版本启动时会报错(缺少资源,release版本不会提示,但显示不正常),具体有二种方法: 1、直接在“解决方案资源管理器”-“资源文件”点右键,“添加”-“现有项”,把C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles所有扩展名为 .rc 的资源包括进来即可。 2、直接在“资源视图”-“您的项目”上点右键,选择“资源包括”,在“资源包括”的“编译时指令”的#include "BCGCBPro.rc"后面添加以下代码: #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyle2007Aqua.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyle2007Luna.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyle2007Obsidian.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyle2007Silver.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyle2010White.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyleCarbon.rc" #include "C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\BCGPStyleScenic.rc" 3、如果使用动态链接,请手工编译C:\Program Files\BCGSoft\BCGControlBarPro\BCGCBPro\Styles\Office2007_styles.sln或者build_all.dsp 仅为学习使用,下载后24小时内删除,请支持 BCGSoft 购买正版,本人不提供技术支持,不对任何负责。 尊重他人劳动成果,欢迎与大家分享成果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值