MFC或者Win32都行
以MFC为例。
首先将SkinMagicLib.h,SkinMagicTrial.dll,SkinMagicTrial.lib放到工程目录下。
在StdAfx.h中加上#include"SkinMagicLib.h"
先在App类中添加成员变量:MagicSkin m_skin;
在App类的InitInstance函数中加上:
if(!m_skin.InitSkin(AfxGetInstanceHandle(), NULL, NULL,NULL))
//处理一下调用失败的情况
if(!m_skin.LoadSkin("Skins\\xplus.smf"))
//处理一下调用失败的情况
这两个调用放到开始出没关系。接下来SetWindowSkin放的位置需要留意一下:
pFrame->LoadFrame(IDR_MAINFRAME,
WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, NULL,
NULL);
m_skin.SetWindow(m_pMainWnd->m_hWnd, "MainFrame"); |
pFrame->ShowWindow(SW_SHOW);
大体就放在InitStance函数的这个位置吧。因为窗口没创建好就给窗口设置皮肤,所以会出错。
最后在ExitInitStance函数中加上:m_skin.ExitSkin();
至于皮肤,可以使用SkinMagicBuilder.exe来自己编辑。上面的MainFrame就是里面的对象名。