[MFC美化] USkin使用详解-使用方法

Posted 我自逍遥笑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[MFC美化] USkin使用详解-使用方法相关的知识,希望对你有一定的参考价值。

 

该种皮肤库资料很少,用法与前面几种类似。

 

它主要有:USkin.dll ,USkin.lib,USkin.h和Sakura.msstyles这四个文件。皮肤格式是.u3。SkinBuilder是USkin界面换肤软件.u3文件制作环境 。

 

以下是摸索出来的用法,如有错误请指正。

一、使用方法

1. 将这四个文件拷贝至相应文件夹下。.lib和.h放在工程文件夹,.dll和Sakura.msstyles放到debug文件夹下。

2. 在工程stdafx.h文件中加入USkin.h和USkin.lib

//..
#endif // _AFX_NO_AFXCMN_SUPPORT 
#include "USkin.h"   //在这个地方加
#pragma comment(lib,"USkin.lib") //或者在(附加依赖项)"Project->Settings->Link->Object/library"中加入USkin.lib
//{{AFX_INSERT_LOCATION}}

3. 在APP类文件的InitInstance()中初始化皮肤库

AfxEnableControlContainer();

BOOL bRe = USkinInit(NULL,NULL,_T("Sakura.msstyles")); //注意:路径不对会导致USkinInit函数执行失败,不显示皮肤。该文件要放在debug下
//USkinInit(NULL,NULL,_T("media.u3"));

4.加载皮肤(.u3皮肤)

USkinLoadSkin(LPCTSTR lpszFileName);
USkinLoadSkinFromBuffer(byte* lpBuffer,UINT nBufferSize);
USkinLoadSkinFromResource(HMODULE hInstance,LPCTSTR lpszResourceName,LPCTSTR lpszResourceType);

5.卸载皮肤库

int CPMFCApp::ExitInstance()
{
    USkinExit(); //
    return CWinApp::ExitInstance();
}

6.更改颜色主题

USkinApplyColorTheme(float fHue,float fSaturation);
USkinApplyColorThemeByRGB(COLORREF clrTheme);

支持颜色主题。这可以使皮肤文件看起来像一个100个不同的皮肤。USkin提供了一个免费版本。

 

特点:

该控件有配套的皮肤开发包SkinBuilder,但现成的皮肤较少。

1、该控件支持对一种皮肤的多种颜色搭配方案。 

2、该控件支持20多种Windows控件。 如文件对话框,颜色对话框,打印对话框对话框,支持自定义的控件/第三方控件,

3、支持所见即所得的风格的皮肤文件编辑,支持MDI / SDI /对话风格的应用程序,支持百叶窗皮肤文件导入,可用于超过10000皮肤文件支持颜色主题,支持VC / SDK / VB / .NET,没有语言限制,支持多线程,支持在运行时改变皮肤,支持所有的弹出菜单,包括编辑控制上下文菜单!

4、当对话框的菜单项下面没有子菜单项时,鼠标移动到该菜单处时出现异常。 

5、返回的菜单句柄为空,无法实现选中(带标记)功能。

6、对重绘控件的支持不好。

 

免费全新的SkinBuilder2.0(当前好像已经到3.0).独创国内唯一完善的MDI模式的SkinBuilder,支持用户自定义皮肤对象! 

7. 新增的绘制模式选项。独有半透明效果支持!!! 

8. 皮肤对象支持消息事件!用来做Winamp太简单了! 

 

 

有关链接:

免费皮肤控件的使用方法及效果测试——USkin v2.2

http://www.68idc.cn/help/mysqldata/DB2/20150902532500.html

USkin皮肤用法,资源,编辑器

http://download.csdn.net/download/youwuleon/2699150

基于USkin软件换肤功能的实现

http://www.docin.com/p-752155506.html

http://www.orcode.com/article/Libraries_20122295.html

以上是关于[MFC美化] USkin使用详解-使用方法的主要内容,如果未能解决你的问题,请参考以下文章

[MFC美化] MFC使用SkinMagic详解-1

[MFC美化] SkinSharp使用详解1-使用方法

请问这两个界面,VS2010用MFC的对话框怎样做出来的呀?

MFC的CListControl列表怎么实现拖动鼠标左键选取一片表格?并改变表格背景颜色

XPButton类美化MFC button (转)

MFC进度条的美化