一篇关于skinmagic的文章

http://pcedu.pconline.com.cn/empolder/gj/vc/0404/358979.html

 

 

使用方法:
1. 在stdafx.h中加入
#include "SkinMagicLib.h"

2. 导入皮肤资源文件*.smf,新建类型如 "SKINMAGIC",ID形式为 "***",如"TUSK"。

3. 在App的InitInstance()里加入以下代码:(注意要加在m_pMainWnd被初始化以后,基于对话框的要加在m_pMainWnd = &dlg;之后)

 //===================加载皮肤并且设置皮肤窗口================*/
 VERIFY(1 == InitSkinMagicLib(AfxGetInstanceHandle(),"SDI",
  NULL,
  NULL));

 VERIFY(1 == LoadSkinFromResource(AfxGetInstanceHandle(),"TUSK","SKINMAGIC"));

 VERIFY(1 == SetWindowSkin(m_pMainWnd->m_hWnd,"MainFrame"));
 VERIFY(1 == SetDialogSkin("Dialog"));
 /*==========================END==============================*/

4. 向项目中添加 SkinMagicLibMT6Trial.lib 文件,或设置连接 SkinMagicLibMT6Trial.lib 文件,同时设置程序静态连接MFC库。


5. 如果是VC7.0,则需要在App的ExitInstance()里加入以下代码(需要SkinMagicLibMT7Trial.lib):
 ExitSkinMagicLib();

 

 

关于对话框无法显示菜单等等的问题:

 

     在App源文件的InitInstance函数中不要调用SetDialogSkin("Dialog")函数,否则的话会所有的对话框都默认使用"Dialog"风格,不会显示工具栏菜单,
在InitInstance函数中只需如此:
VERIFY(1 == InitSkinMagicLib(AfxGetInstanceHandle(),NULL,NULL,NULL ));
VERIFY(1 == LoadSkinFromResource(NULL,MAKEINTRESOURCE(IDR_SKIN1),"SKIN"));

然后在每对话框的初始函数InitDialog()中调用SetDialogSkin("Dialog"),则设置为该对话框的菜单就会显示出来了。不过该对话框的类中要使用MessageBox前应调用SetWindowSkin("Dialog"),之后用RemoveWindowSkin()卸载皮肤,不然,MessageBox弹出时会是默认的界面。

 

在你的程序的InitInstance函数中加入了
SetDialogSkin函数
这种按照一般加皮肤的方法,在对话框中加菜单是不行的!
你需要在你的主对话框的OnInitDialog函数中加入下列函数
SetWindowSkin( m_hWnd, "Dialog" );
SetDialogSkin( "Dialog" );

SetWindowSkin( m_hWnd, "Dialog" );
m_hWnd 是你的主对话框的窗口句柄
这样就可以在你的主兑换框中添加菜单了!

后面那句SetDialogSkin是为了给你以后的对话框添加皮肤的!

 

以下内容摘抄自如下联接:

http://www.cppblog.com/tx7do/archive/2006/06/22/8838.aspx(有很不错的内容可以参考)

 

目前网上SkinMagic的破解版有三种,一种是1.0的,第二种是2.01的,还有一种是2.21的。1.0版有一个比较大的Bug,在列表控件上无法显示中文。而2.21版就太复杂了,有四个不同的库,因此推荐使用2.01版。

2.0b1版破解Dll下载地址
http://blog.blogchina.com/upload/2004-10-14/20041014085855738204.rar
2.0b1原版
http://www.appspeed.com/download/v2.0/setup.exe

1、SkinMagicLib.h拷贝到工程目录下;

2、将SkinMagicLib.lib及smf皮肤文件放到VC工程的RES目录下;

3、将Lib文件链接到工程中;

4、在StdAfx.h中加入 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
SkinMagic SDK是为C/C++程序员设计的函数库,通过使用该库提供的API可以很方便的为你 的应用程序增加最流行的换皮肤的功能。SkinMagic是基于图片的皮肤系统,只要简单的几个 函数调用你的应用程序就具有了换皮肤的功能。通过SkinMagicBuilder皮肤编辑工具,你可以 定制自己特色的皮肤。 History of SkinMagic for C/C++ 2003.3.1 SkinMagic SDK V1.0 Bug Fixed: 1,SkinMagic SDK *Fix Radio button flicker problem *Fix Check button flicker problem *Fix Menu paint problem under MDI window *Fix Rebar problem *Fix menu scroll problem *Fix flicker problem when change skin. +Add automatic adjust control position by skin +Add font property to all control 2,SkinMagicBuilder +Add Zoom tool +Add Visual Object Editor +Add WYSWYG skin control edit. +Add SkinMagicEditor use guide. +Add more you can find in program. 2003.2.18 SkinMagic SDK V0.9 SP1 Bug Fixed: +SkinMagic.DLL support VC7(VC.NET) *Fix drag horizontal toolbar and drop to vertical dock position problem. *Fix MDI client window paint problem. *Fix Toolbar flicker problem. =========================== SkinMagic SDK Version0.8 =========================== 增加功能: 1,支持多线程 2,增加对Tab换皮肤功能 3,增加对Edit换皮肤功能 4,增加对RichEdit换皮肤功能 5,增加对ListBox换皮肤功能 6,增加对TreeView换皮肤功能 7,增加对ListView换皮肤功能 8,增加对Header换皮肤功能 9,增加对ScrollBar控件换皮肤功能 10,增加对Tab换皮肤功能 11,增加对Simple的ComboBox的换皮肤功能 12,增加TrackSkinPopupMenu函数支持右键菜单的换皮肤。 13,增加两个函数支持非标准的窗口的滚动条的换皮肤。 14,增加几个新的皮肤文件 15,增加SDK和WTL的例子程序,增加一个控件换皮肤的例子程序。 16,增加一个对话框窗口显示菜单的例子程序。 17,增加一个用于动态链接MFC库的LIB 修订的问题: 1,RemoveWindowSkin有问题会导致窗口的菜单丢失,程序退出的时候死机。 2,工具条上Disable的按钮的图标没有显示成Disable的状态。 3,在状态栏中的三个(通常情况)键盘状态指示器:NumLock,CapsLock,ScrollLock好像不能随键盘的状态的改变而动态地改变! 4,有时候系统按钮的菜单状态不是很合理 5,工具条从前在Button旁边有箭头表示该按钮支持菜单,现在使用该库以后箭头不见了 6,解决MDI窗口的一个刷新问题。 7,解决MFC库中定义的函数连接的时候重复定义的问题。 8,修订无法实时刷新更新的菜单的问题。 ================================= SkinMagic SDK for Visual C++ Website:http://www.appspeed.com/ Support:support@appspeed.com =================================

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值