见好多人抱怨SkinMagic编译连接通不过,本人有幸找到一个很顺利就通过编译能正常使用的动态库,并将其封装,与大家分享。
封装类为CSkinMagic,在SkinMagic.h文件中定义。
现以在MFC多文档程序中使用SkinMagic为例,说明CSkinMagic的使用,假定现有一名为SkinMagicWrapper的MFC多文档程序工程,使用步骤如下:
1. 在SkinMagicWrapper.h中添加 #include "SkinMagic.h";
2. 在类CSkinMagicWrapperApp中添加一成员:
CSkinMagic m_Skin;
3. BOOL CSkinMagicWrapperApp::InitInstance()函数中添加
m_Skin.LoadSkinFile("corona.smf"); // 加载皮肤文件
m_Skin.SetWindowSkin(pMainFrame->m_hWnd, "MainFrame"); // 设置框架窗口皮肤
m_Skin.SetDialogSkin("Dialog"); // 设置对话框窗口皮肤
4. 在int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 函数中添加
theApp.m_Skin.SetWindowSkin(m_hWnd, "MainFrame"); 在OnCreate函数前添加
extern CSkinMagicWrapperApp theApp;
恭喜,你的MFC多文档程序面貌已经焕然一新了。
因为MDI即要处理框架窗口,又要处理ChildFrame还有打开文件、About等对话框,因而有以上如此多步骤,如果你的程序仅只使用对话框,那么很简单,只需要在 xxxApp::InitInstance()函数中添加以下两行就OK
m_Skin.LoadSkinFile("corona.smf"); // 加载皮肤文件
m_Skin.SetDialogSkin("Dialog"); // 设置对话框窗口皮肤 (所有对话框)
注意: 系统或当前目录必须有SkinMagicTrial.dll和corona.smf文件,假如找不到SkinMagicTrial.dll和皮肤文件,那么程序同样可以运行,只不过还是Windows的标准界面了。
可以使用SkinMagicBuilder.exe自己编辑皮肤文件
可到官方网站 http://www.appspeed.com下载SkinMagic SDK和SkinMagicBuilder。
请在这里下载本例源代码: http://www.nhvideo.net/codes/SkinMagicWrapper.rar (无需SDK)
封装类为CSkinMagic,在SkinMagic.h文件中定义。
现以在MFC多文档程序中使用SkinMagic为例,说明CSkinMagic的使用,假定现有一名为SkinMagicWrapper的MFC多文档程序工程,使用步骤如下:
1. 在SkinMagicWrapper.h中添加 #include "SkinMagic.h";
2. 在类CSkinMagicWrapperApp中添加一成员:
CSkinMagic m_Skin;
3. BOOL CSkinMagicWrapperApp::InitInstance()函数中添加
m_Skin.LoadSkinFile("corona.smf"); // 加载皮肤文件
m_Skin.SetWindowSkin(pMainFrame->m_hWnd, "MainFrame"); // 设置框架窗口皮肤
m_Skin.SetDialogSkin("Dialog"); // 设置对话框窗口皮肤
4. 在int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 函数中添加
theApp.m_Skin.SetWindowSkin(m_hWnd, "MainFrame"); 在OnCreate函数前添加
extern CSkinMagicWrapperApp theApp;
恭喜,你的MFC多文档程序面貌已经焕然一新了。
因为MDI即要处理框架窗口,又要处理ChildFrame还有打开文件、About等对话框,因而有以上如此多步骤,如果你的程序仅只使用对话框,那么很简单,只需要在 xxxApp::InitInstance()函数中添加以下两行就OK
m_Skin.LoadSkinFile("corona.smf"); // 加载皮肤文件
m_Skin.SetDialogSkin("Dialog"); // 设置对话框窗口皮肤 (所有对话框)
注意: 系统或当前目录必须有SkinMagicTrial.dll和corona.smf文件,假如找不到SkinMagicTrial.dll和皮肤文件,那么程序同样可以运行,只不过还是Windows的标准界面了。
可以使用SkinMagicBuilder.exe自己编辑皮肤文件
可到官方网站 http://www.appspeed.com下载SkinMagic SDK和SkinMagicBuilder。
请在这里下载本例源代码: http://www.nhvideo.net/codes/SkinMagicWrapper.rar (无需SDK)