VC-SkinMagic皮肤控件使用

本文详细介绍了如何在对话框程序中使用SkinMagic皮肤控件,包括配置环境、加载皮肤文件、实现皮肤切换等功能。通过实际操作步骤,帮助开发者轻松掌握SkinMagic的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VC-SkinMagic皮肤控件使用

经过努力试验终于搞定了,写下过程:
我发现我没有使用从vckbase下载的破解版的lib文件。

在对话框程序里使用skinmagic皮肤控件
1
先把skinmagiclib.h文件拷贝入工程目录,
在左边的fileview卡片里面,在Resource files栏目加入SkinMagicLib.lib和DETOURS.lib,这两个文件的路径在哪里无所谓,只要加入就行。可以把它们拷贝入工程的目录下。还有,可以把smf皮肤文件都拷贝入工程的目录下,方便加载皮肤。
在FileView卡片里面加入SkinMagicLib.h文件,并在stdafx.h中加入#include "SkinMagicLib.h"
2
在C**App类的文件里面找到InitInstance函数
在函数开始部分加入
VERIFY( 1 == InitSkinMagicLib( AfxGetInstanceHandle(), "Demo" ,
NULL,
NULL ) );//Demo字样可以随意修改
VERIFY( 1 == LoadSkinFile("corona.smf") ); //皮肤文件只要在同一目录下就行。如果没有
//就编译出错
3
按Ctrl+W,看到ClassWizard,再给C**App类加入ExitInstance函数
内容是
ExitSkinMagicLib();//为了退出时清理内存
return CWinApp::ExitInstance();
4
在C**Dlg::OnInitDialog()函数里面
结束部分加入
SetWindowSkin( m_hWnd , "Dialog" );
SetDialogSkin("Dialog");
5
加一个按钮或者菜单,内容是“load skin”
添加按钮点击事件的代码为
char strExt[]= "SkinMagic Files(*.smf)|*.smf||";
CFileDialog dlg( TRUE, "*.smf", "*.smf" , OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
, strExt , this );

if( dlg.DoModal() == IDOK )
{
LoadSkinFile( (char*)(LPCSTR)(dlg.GetPathName()) );
}
这样就能够随意从文件里面加载皮肤了。
又补:

我又试验了一下,把下载的破解版SkinMagicLib.lib(大小2.4m),替换以前的lib文件(大小967k)
也能够顺利编译。
以下是破解版里面的readme

SkinMagic 2.0B1 破解版
作者:BingoStudio
一、用Skin++要带DLL,SSK文件,很不爽!发现SkinMagic 2.0B1的皮肤可用资源,不用带DLL,真是方便!
二、SkinMagic 2.0B1的下载版本是TRAIL版,编译后运行的提示框很讨厌,破之!!

不明白他强调的是什么弹出的对话框,因为我一直没有看到有什么要注册的对话框出现,无论是原来的skinmagiclib.lib还是破解的skinmagiclib.lib
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值