系统环境:Windows 10 (10586.17)
软件环境:Visual Studio 2010
本次目的:为已有的MFC对话框程序(实例工程:BCGTest)换肤
------------------------------------------------------------- 华丽的分割线 -------------------------------------------------------------
第一步、 在stdafx.h文档中包含头文件 <BCGCBProInc.h>
// stdafx.h
......
#include <BCGCBProInc.h>
第二步、 将对话框类的父类改为CBCGPDialog,也可以采取简便的方法:
// BCGTestDlg.h
#pragma once
// 可以在这里添加一个宏
#define CDialogEx CBCGPDialog
class CBCGTestDlg : public CDialogEx
{ ...... }
第三步、 为CBCGTestApp再添加一个父类CBCGPWorkspace
// BCGTest.h
#pragma once
......
class CBCGTestApp : public CWinApp, public CBCGPWorkspace
{ ...... }
第四步、 打开BCGTestDlg.cpp,添加如下代码:
// BCGTestDlg.cpp
......
CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD)
{
EnableVisualManagerStyle();
}
BOOL CBCGTestDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
......
CBCGPVisualManager2007::SetStyle(CBCGPVisualManager2007::VS2007_LunaBlue);
// 使Office 2007皮肤可用
CBCGPVisualManager::SetDefaultManager(RUNTIME_CLASS(CBCGPVisualManager2007));
// 使Office 2007风格有效
EnableVisualManagerStyle();
return TRUE;
}
第五步、 在CBCGTestApp::InitInstance()结束前,添加BCGCBProCleanUp()
// BCGTestDlg.h
BOOL CBCGTestApp::InitInstance()
{
......
BCGCBProCleanUp();
return FALSE;
}
测试效果: