BCGControlBar MFC对话框换肤

系统环境:Windows 7
软件环境:Visual Studio 2008 SP1
本次目的:实现MFC对话框换肤

      在较新版本的BCGControlBar之中增加了对对话框和文档中窗体的form进行换肤。更改了一些控件的显示样式,其中有类似office 2007、office 2010 等等之类的皮肤。下面开始进行换肤,在此先要做好准备,必须安装有BCGControlBar(可以看这里的文章http://blog.csdn.net/akof1314/archive/2010/03/20/5399928.aspx

首先:利用BCG向导 建立一个基于对话框的程序,然后删去不需要的文件,如下图所示:

然后,因为我们这次要进行对话框换肤的界面为office 2007蓝色效果 ,所以我们在资源里面导入C:/Program Files/BCGSoft/BCGControlBarPro/BCGCBPro/Styles/BCGPStyle2007Aqua.rc,其他界面再对应加入即可。
接着,在对话框的初始化函数OnInitDialog() 中,加入以下代码

BOOL  CThe_Bcg_DialogDlg:: OnInitDialog()
{
    CBCGPDialog:: OnInitDialog();
    //```````````
    CBCGPVisualManager2007:: SetStyle ( CBCGPVisualManager2007:: VS2007_LunaBlue);
    CBCGPVisualManager:: SetDefaultManager ( RUNTIME_CLASS ( CBCGPVisualManager2007));
    EnableVisualManagerStyle();
    return  TRUE ;   // return TRUE  unless you set the focus to a control
}

接着,只要在对话框上放置自己想要的控件即可。下面分别是不同系统上的效果。
Windows 7系统下:

Windows XP系统下:

我们可以看到界面上的一些控件都变掉了,相对好看了些。但是在Windows XP下,标题栏显得特别不协调。如果想要在XP系统下也使标题栏达到换肤的话,请看下一篇《BCGControlBar MFC对话框换肤(续)

 

 

2010年6月11日 补充:在后来的了解中,其实只在对话框的初始化函数OnInitDialog() 中,把其中的语句换成下面的

EnableVisualManagerStyle(TRUE,TRUE);

就可以实现对话框换肤,Windows XP效果如下:

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值