SkinSharp功能强大,该皮肤库支持完全多种颜色改变等。

下面是静态链接库时的SkinH.h头文件:

/*在Stdafx.h文件中加入如下语句
#include "SkinH.h"
#pragma comment(lib, "Detours.lib")
#pragma comment(lib, "SkinH_ST.lib") **************** 根据编译选项在链接选项中做如下设置 ***********
下表显示根据要使用的运行时库应忽略的库。
若要使用第一行运行时库 请忽略第2行的这些库
单线程 (libc.lib)
libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
多线程 (libcmt.lib)
libc.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
使用 DLL 的多线程 (msvcrt.lib)
libc.lib、libcmt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
调试单线程 (libcd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcmtd.lib、msvcrtd.lib
调试多线程 (libcmtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、msvcrtd.lib
使用 DLL 的调试多线程 (msvcrtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib
**************************************************************/
#ifndef SKIN_H
#define SKIN_H ///ERROR CODE////////////////////////
#define SRET_OK 0
#define SRET_ERROR 1
#define SRET_ERROR_FILE 2
#define SRET_ERROR_PARAM 3
#define SRET_ERROR_CREATE 4
#define SRET_ERROR_FORMAT 5
#define SRET_ERROR_VERSION 6
#define SRET_ERROR_PASSWORD 7
#define SRET_ERROR_INVALID 8
////////////////////////////////////// //接口列表
extern "C"
{
/*
功能: 静态库初始化
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_Init(HINSTANCE hInstance); /*
功能: 静态库卸载
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_Free(); /*
功能: 加载程序当前目录下的文件名skinh.she皮肤进行换肤
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_Attach(); /*
功能: 加载指定路径的皮肤进行换肤
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AttachEx(
LPCTSTR strSkinFile, //皮肤文件路径
LPCTSTR strPassword //皮肤密钥
); /*
功能: 加载指定路径的皮肤进行换肤并指定相应的色调,饱和度,亮度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AttachExt(
LPCTSTR strSkinFile, //皮肤文件路径
LPCTSTR strPassword, //皮肤密钥
int nHue, //色调, 取值范围0-360, 默认值0
int nSat, //饱和度, 取值范围0-256, 默认值0
int nBri //亮度, 取值范围0-256, 默认值0
); /*
功能: 加载指定资源进行换肤并指定相应的色调,饱和度,亮度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AttachRes(
LPBYTE pShe, //资源皮肤数据指针
DWORD dwSize, //资源皮肤数据长度
LPCTSTR strPassword, //皮肤密钥
int nHue, //色调, 取值范围0-360, 默认值0
int nSat, //饱和度, 取值范围0-256, 默认值0
int nBri //亮度, 取值范围0-256, 默认值0
); /*
功能: 加载指定皮肤资源进行换肤并指定相应的色调,饱和度,亮度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AttachResEx(
LPCTSTR lpName, //资源名
LPCTSTR lpType, //资源类型
LPCTSTR strPassword, //皮肤密钥
int nHue, //色调, 取值范围0-360, 默认值0
int nSat, //饱和度, 取值范围0-256, 默认值0
int nBri //亮度, 取值范围0-256, 默认值0
); /*
功能: 卸载换肤
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_Detach(); /*
功能: 卸载指定句柄的窗体或者控件的皮肤
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_DetachEx(
HWND hWnd //指定卸载皮肤的窗体或控件的句柄
); /*
功能: 设置指定窗体的透明度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetWindowAlpha(
HWND hWnd, //窗体的句柄
int nAlpha //透明度
); /*
功能: 调整当前皮肤的色调,饱和度,亮度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AdjustHSV(
int nHue, //色调, 取值范围0-360, 默认值0
int nSat, //饱和度, 取值范围0-256, 默认值0
int nBri //亮度, 取值范围0-256, 默认值0
); /*
功能: 获取指定窗口或控件在nX,nY处的颜色值
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_GetColor(
HWND hWnd, //指定窗体或控件的句柄
int nX, //横坐标
int nY //纵坐标
); /*
功能: 指定窗体和控件的换肤类型
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_Map(
HWND hWnd, //指定窗体或控件的句柄
int nType //换肤类型
); //换肤类型
#define TYPE_UNKNOWN 0 //未知类型
#define TYPE_ANIMATE 1001 //动画控件
#define TYPE_CHECKBOX 1002 //复选框
#define TYPE_COMBOBOX 1003 //组合框
#define TYPE_COMBOLBOX 1004 //组合下拉框
#define TYPE_CONTROLBAR 1005 //控件栏
#define TYPE_DATETIME 1006 //日期控件
#define TYPE_EDITBOX 1007 //文本框
#define TYPE_GROUPBOX 1008 //分组框
#define TYPE_HEADERCTRL 1009 //列头控件
#define TYPE_HOTKEY 1010 //热键控件
#define TYPE_IPADDRESS 1011 //IP地址控件
#define TYPE_LABEL 1012 //标签控件
#define TYPE_LISTBOX 1013 //列表框
#define TYPE_LISTVIEW 1014 //列表视图
#define TYPE_MDICLIENT 1015 //MDI客户区
#define TYPE_MENU 1016 //菜单
#define TYPE_MONTHCAL 1017 //月历控件
#define TYPE_PICTURE 1018 //图片框
#define TYPE_PROGRESS 1019 //进度条
#define TYPE_PUSHBUTTON 1020 //普通按钮
#define TYPE_RADIOBUTTON 1021 //单选框
#define TYPE_REBAR 1022 //重组栏
#define TYPE_RICHEDIT 1023 //富文本框
#define TYPE_SCROLLBAR 1024 //滚动条
#define TYPE_SCROLLCTRL 1025 //内置滚动条的控件
#define TYPE_SPINCTRL 1026 //调节器
#define TYPE_STATUSBAR 1027 //状态栏
#define TYPE_TABCTRL 1028 //选择夹
#define TYPE_TOOLBAR 1029 //工具栏
#define TYPE_TOOLBARWND 1030 //MFC工具栏窗体
#define TYPE_TRACKBAR 1031 //滑条控件
#define TYPE_TREEVIEW 1032 //树形视图
#define TYPE_WINDOW 1034 //标准窗体
#define TYPE_COMCTRL 1036 //通用换肤
#define TYPE_PAINTCTRL 1037 //通用换肤 /*
功能: 设置Aero特效
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetAero(
int bAero //1为开启特效,0为关闭特效
); /*
功能: 设置Aero特效参数
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_AdjustAero(
int nAlpha, //透明度, 0-255, 默认值0
int nShwDark, //亮度, 0-255, 默认值0
int nShwSharp, //锐度, 0-255, 默认值0
int nShwSize, //阴影大小, 2-19, 默认值2
int nX, //水平偏移, 0-25, 默认值0 (目前不支持)
int nY, //垂直偏移, 0-25, 默认值0 (目前不支持)
int nRed, //红色分量, 0-255, 默认值 -1
int nGreen, //绿色分量, 0-255, 默认值 -1
int nBlue //蓝色分量, 0-255, 默认值 -1
); /*
功能: 设置窗体是否可以移动
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetWindowMovable(
HWND hWnd, //窗口句柄
BOOL bMovable //0为不可移动, 1为可移动
); /*
功能: 设置控件的背景色(目前仅对单选框, 复选框, 分组框有效)
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetBackColor(
HWND hWnd, //控件句柄
int nRed, //红色分量
int nGreen, //绿色分量
int nBlue //蓝色分量
); /*
功能: 设置控件的文本颜色色(目前仅对单选框,复选框,分组框有效)
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetForeColor(
HWND hWnd, //控件句柄
int nRed, //红色分量
int nGreen, //绿色分量
int nBlue //蓝色分量
); /*
功能: 用于填充表格或者列表控件数据时,重复绘制影响执行效率问题
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_LockUpdate(
HWND hWnd, //指定窗体或控件的句柄
int bUpdate //1为锁定绘制,0为解锁绘制
); /*
功能: 设置菜单透明度
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetMenuAlpha(
int nAlpha //菜单透明度,取值范围 0 - 255
); /*
功能: 绘制指定设备上下文的元素
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_NineBlt(
HDC hDtDC, //目标设备上下文
int left, //左上角水平坐标
int top, //左上角垂直坐标
int right, //右下角水平坐标
int bottom, //右下角垂直坐标
int nMRect //元素id
); /*
功能: 设置标题菜单栏
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetTitleMenuBar(
HWND hWnd, //窗口句柄
BOOL bEnable, //是否设置 1为设置, 0 为取消
int nTMenuY, //菜单栏高度
int nTopOffs, //顶部偏移
int nRightOffs //右部偏移
); /*
功能: 设置控件的字体
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetFont(
HWND hWnd, //控件的句柄
HFONT hFont //字体句柄
); /*
功能: 设置控件的字体
返回值: 成功返回0, 失败返回非0
*/
int __stdcall SkinH_SetFontEx(
HWND hWnd, //控件的句柄
LPCTSTR szFace, //字体名称
int nHeight, //字体高度
int nWidth, //字体宽度
int nWeight, //字体磅数
int nItalic, //是否斜体
int nUnderline, //是否下划线
int nStrikeOut //是否删除线
); }
#endif

[MFC美化] SkinSharp使用详解2-SkinH.h函数介绍的更多相关文章

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

    需要注意的是: 加载换肤后,程序关闭时,无需调用卸载皮肤接口,SkinSharp换肤库会自己完成清理工作.换肤时无需卸载皮肤,直接调用即可. 其DLL使用方法与前面几种皮肤库用法类似.如下: 1. 将 ...

  2. [MFC美化] SkinMagic使用详解3- 常见使用问题解答

    在SkinMagic使用过程中,经常遇到以下几个问题: 1. 静态加载皮肤文件时,资源文件IDR_SKIN_CORONA可能会报错:未声明的标识符 解决方法:添加头文件"Resource.h ...

  3. [MFC美化] Skin++使用详解-使用方法及注意事项

    主要分为以下几个方面: 1.Skin++使用方法 2.使用中注意事项 一. Skin++使用方法 SkinPPWTL.dll.SkinPPWTL.lib.SkinPPWTL.h ,将三个文件及相应皮肤 ...

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

    该种皮肤库资料很少,用法与前面几种类似. 它主要有:USkin.dll ,USkin.lib,USkin.h和Sakura.msstyles这四个文件.皮肤格式是.u3.SkinBuilder是USk ...

  5. [MFC美化] SkinMagic使用详解2- SkinMagic常用函数介绍

    SkinMagic常用函数介绍 (1)InitSkinMagicLib函数:初始化SkinMagic int InitSkinMagicLib( //初始化SkinMagic工具库 HINSTANCE ...

  6. [MFC美化] SkinMagic使用详解1- SkinMagic使用流程

    [SkinMagic使用流程] 1.工程配置SkinMagic相关文件 2.初始化SkinMagic皮肤文件,窗体加载皮肤 3.释放皮肤资源 特别声明,SkinMagic要是破解版的,如果不是,可能需 ...

  7. MFC下CSocket编程详解(转)

    原文转自 http://blog.csdn.net/yejiansnake/article/details/2175778 MFC下CSocket编程详解: 1. 常用的函数和注意事项(详细的函数接口 ...

  8. IIS负载均衡-Application Request Route详解第一篇: ARR介绍(转载)

    IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...

  9. 淘宝JAVA中间件Diamond详解(2)-原理介绍

    淘宝JAVA中间件Diamond详解(二)---原理介绍 大家好,通过第一篇的快速使用,大家已经对diamond有了一个基本的了解.本次为大家带来的是diamond核心原理的介绍,主要包括server ...

随机推荐

  1. SZU:A66 Plastic Digits

    Description There is a company that makes plastic digits which are primarily put on the front door o ...

  2. c#中关于String、string,Object、object,Int32、int

    在java中,string和String有着明显的区别,后者就是前者的一个封装.在c#中,好像是通用的,大部分情况下,两者互换并不会产生问题.今天特意查了一下资料,了解了一下两者的关系. 简单的讲,S ...

  3. 一个简单的Garbage Collector的实现

    一个简单的Garbage Collector的实现 前言: 最近看了google的工程师写的一个非常简单的垃圾收集器,大概200多行C代码,感叹大牛总能够把复杂的东西通过很简单的语言和代码表达出来.为 ...

  4. 用自己的话表达出来-Servlet

    什么是Servlet Servlet就是工作在服务器端的类,该类可以处理用户传过来的请求,也可以通过响应向用户输送数据. 如何使用Servlet Servlet就是处理用户的HTTP请求,然后回送HT ...

  5. oracle数据库管理--对象、角色相关查询

    1.数据字典:     记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有用户者为sys用户.用户只能在数据字典上执行查询操作(select语句),而其维护与修改是由系统自动完成的.数据字 ...

  6. D14

    T1:有点坑的模拟,考心细+代码能力 T2:最小生成树 记得开long long,不然会全WA.. 莫名超时三个点,据学长说可以开并查集优化,叫做按秩排序..=-=现在木有网啊..哪天再看 T3:di ...

  7. 重拾C

    重拾C,一天一点点_10 来博客园今天刚好两年了,两年前开始学编程. 忙碌近两个月,项目昨天上线了,真心不容易,也不敢懈怠,接下来的问题会更多.这两天调试服务器,遇到不少麻烦. 刚出去溜达了一下,晚上 ...

  8. LatestResultsProvider

    LatestResultsProvider 前言 阅读本文前,需要读者对happens-before比较熟悉,了解非阻塞同步的一些基本概念.本文主要为happens-before法则的灵活运用,和一些 ...

  9. 使用HttpURLConnection实现多线程下载

    HttpURLConnection继承了URLConnection,因此也可用于向指定网站发送GET请求.POST请求,而且它在URLConnection基础上提供了如下便捷方法: 实现多线程下载的步 ...

  10. How to install Savanna

    Pre-conditions: openstack has been installed successfully. 解压软件包中的savanna-all.tar.gz安装tar -C / -xzf ...