项目中使用的库文件,下载地址:
https://download.csdn.net/download/byh371256/10741951
//VC皮肤库文件SkinPlusPlusDLL实现步骤:
1、在stdafx.h中 引入头文件和库文件 并且工程中添加头文件SkinPlusPlus.h
#include "SkinPlusPlus.h"
#pragma comment(lib, "SkinPlusPlusDLL.lib")
2、在App类在其虚函数InitInstance()中 AfxEnableControlContainer(); 后面添加如下代码
#ifdef _AFXDLL
Enable3dControls();
#else
Enable3dControlsStatic();
#endif
InitializeSkin(("Minimized.ssk"));//初始化
3、重载App的ExitInstance函数添加ExitSkin()函数
在APP的.h头文件中
virtual int ExitInstance();//重写声明
//重写实现
int CConnectSerialPortApp::ExitInstance()
{
ExitSkin();
return CWinApp::ExitInstance();
}
4、在界面初始化函数 OnInitDialog()中添加
LoadSkin("XPCorona.ssk");
初始化皮肤库文件
srand(time(NULL)); //使用srand()用来设置rand()产生随机数时的随机数种子 用time函数值(即当前时间),
//因为两次调用rand()函数的时间通常是不同的,这样就可以保证随机性了。
int nRand = rand() % 3;
theApp.m_nRand = nRand;
switch (nRand)
{
case 0:
InitializeSkin("Minimized.ssk");
break;
case 1:
InitializeSkin("SoftCrystal.ssk");
break;
case 2:
InitializeSkin("XPCorona.ssk");
break;
}
//加载皮肤库文件
BOOL CConnectSerialPortDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
switch (theApp.m_nRand)
{
case 0:
LoadSkin("Minimized.ssk");
break;
case 1:
LoadSkin("SoftCrystal.ssk");
break;
case 2:
LoadSkin("XPCorona.ssk");
break;
}
}
其中一种效果图: