[MFC美化] SkinMagic使用详解2- SkinMagic常用函数介绍
SkinMagic常用函数介绍
(1)InitSkinMagicLib函数:初始化SkinMagic
int InitSkinMagicLib( //初始化SkinMagic工具库
HINSTANCE hInstance, //应用程序句柄
char* szApplication , //皮肤文件中定义的应用程序名,置为NULL即可
char* szRegCode, //SkinMagic的使用注册码。若无置为NULL
char* szReserved2); //保留位,为NULL
(2)LoadSkinFile函数:加载皮肤文件
LoadSkinFile(LPCTSTR lpSkinFile)//要加载的皮肤文件名
(3)LoadSkinFromResource函数:从资源加载皮肤文件
int LoadSkinFromResource(
HMODULE hModule, //包含皮肤文件的模块句柄,若NULL表面在本模块中
char* lpSkinName , //皮肤资源的名称
char* lpType); //资源的类型
(4)SetWindowSkin函数:为标准对话框加载皮肤(比如文档)
int SetWindowSkin( HWND hWnd , //要换肤的对话框句柄
LPCTSTR lpSkinName )//皮肤名
(5)SetDialogSkin函数:为对话框加载皮肤文件(比如基本对话框Dlg)
int SetDialogSkin( HWND hWnd , //要换肤的对话框句柄
LPCTSTR lpSkinName )//皮肤名
(6)SetShapeWindowSkin函数:为shape对话框加载皮肤文件(这个对话框是固定大小,无法进行拉伸缩小)
int SetShapeWindowSkin(
HWND hWnd, //对话框句柄
LPCTSTR pszName) //shape界面皮肤名.
(7)ExitSkinMagicLib函数:释放资源
void ExitSkinMagicLib()//释放资源文件
SkinMagic其他函数介绍
(1)RemoveDialogSkin();停止自动给窗体加载皮肤,针对SetDialogSkin
(2)RemoveWindowSkin(HWND hWnd);去掉指定窗口皮肤,当某个窗体或者控件不需要皮肤时可以使用此函数
(3)EnableWindowScrollbarSkin(HWND hWnd, SB_BOTH) 给指定窗体加载滚动条皮肤。比较适用于自绘的控件。
(4)DisableWindowScrollbarSkin(HWND hWnd) 使指定窗体停止加载滚动条皮肤。
(5)SetControlSkin()为单个控件换肤
int SetControlSkin(
HWND hWnd, //控件句柄
LPCTSTR pszName, //皮肤文件里面的皮肤对象
LPCTSTR pszOwnerSkinName //皮肤文件里面的窗口对象
);
注意事项:
1. 当自绘控件与加载皮肤的窗体冲突时的解决方法
解决方法:先对窗体加载皮肤,再建立控件自绘的功能。
具体的做法是: 1)DoDataExchange取消自绘控件实例与资源控件ID的关联
2)在SetSingleDialogSkin之后自绘控件实例采用SubclassDlgItem的方法与资源控件ID关联。
VERIFY( == SetSingleDialogSkin(this->GetSafeHwnd(), _T("Dialog") ) );
m_list.SubclassDlgItem(IDC_LIST1,this);
参考链接:
http://blog.csdn.net/nonecode/article/details/7952065
http://blog.csdn.net/miao2034056/article/details/9196411
[MFC美化] SkinMagic使用详解2- SkinMagic常用函数介绍的更多相关文章
- [MFC美化] Skin++使用详解-使用方法及注意事项
主要分为以下几个方面: 1.Skin++使用方法 2.使用中注意事项 一. Skin++使用方法 SkinPPWTL.dll.SkinPPWTL.lib.SkinPPWTL.h ,将三个文件及相应皮肤 ...
- [MFC美化] SkinSharp使用详解2-SkinH.h函数介绍
SkinSharp功能强大,该皮肤库支持完全多种颜色改变等. 下面是静态链接库时的SkinH.h头文件: /*在Stdafx.h文件中加入如下语句 #include "SkinH.h&quo ...
- [MFC美化] SkinSharp使用详解1-使用方法
需要注意的是: 加载换肤后,程序关闭时,无需调用卸载皮肤接口,SkinSharp换肤库会自己完成清理工作.换肤时无需卸载皮肤,直接调用即可. 其DLL使用方法与前面几种皮肤库用法类似.如下: 1. 将 ...
- [MFC美化] USkin使用详解-使用方法
该种皮肤库资料很少,用法与前面几种类似. 它主要有:USkin.dll ,USkin.lib,USkin.h和Sakura.msstyles这四个文件.皮肤格式是.u3.SkinBuilder是USk ...
- MFC下CSocket编程详解(转)
原文转自 http://blog.csdn.net/yejiansnake/article/details/2175778 MFC下CSocket编程详解: 1. 常用的函数和注意事项(详细的函数接口 ...
- IIS负载均衡-Application Request Route详解第一篇: ARR介绍(转载)
IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...
- <转>详解DNS的常用记录(上):DNS系列之二
详解DNS的常用记录(上) 在上篇博文中,我们介绍了DNS服务器的体系结构,从中我们了解到如果我们希望注册一个域名,那么必须经过顶级域名服务器或其下级的域名服务器为我们申请的域名进行委派,把解析权委派 ...
- 淘宝JAVA中间件Diamond详解(2)-原理介绍
淘宝JAVA中间件Diamond详解(二)---原理介绍 大家好,通过第一篇的快速使用,大家已经对diamond有了一个基本的了解.本次为大家带来的是diamond核心原理的介绍,主要包括server ...
- SQL 中详解round(),floor(),ceiling()函数的用法和区别?
SQL 中详解round(),floor(),ceiling()函数的用法和区别? 原创 2013年06月09日 14:00:21 摘自:http://blog.csdn.net/yueliang ...
随机推荐
- NET框架SOA解决方案(集Windows服务、WinForm形式与IIS形式发布)-分布式应用
NET框架SOA解决方案(集Windows服务.WinForm形式与IIS形式发布)-分布式应用 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.N ...
- 2014.3.11-C语言学习小结
文件操作: 知识点: 持久化 1.文本文件的读写 2.二进制文件的读写 3.缓冲文件系统 1.打开文件 2.读写文件 3.保存 4.关闭文件 ============================= ...
- D5
今天的题目跟前几天的比起来简单了许多 由于T1没有开long long 所以T1全部WA掉了...只悲催的A了第二题 T1:多重背包 其实这一题我真心不会,DP各种弱,简直欲哭无泪... 不过认真的看 ...
- Twitter算法
算法实践——Twitter算法面试题(积水问题)的线性时间解法 问题描述:在下图里我们有不同高度的挡板.这个图片由一个整数数组所代表,数组中每个数是墙的高度.下图可以表示为数组(2.5.1.2.3 ...
- 记录在IIS中安装部署Orchard遇到的问题
本机环境:Windows 8.1 + IIS8.5 + VS2013+SQLServer2012 首先是从官网直接下载Orchard.Web 1.7.2版的安装包,在本机IIS上部署,按官方文档一步步 ...
- 替换__thread的一种方式,实现TLS功能
TLS是由于多线程编程带来的产物,主要是为了解决线程资源局部化,具体内容网上有很多介绍.有很多地方已经支持了该功能,但有些地方没有,下面是GCC的一些介绍,反正具体看实际使用情况: 5.51 Thre ...
- 采用SOLR进行全文索引的完整解决方案,设计图
- kivy create a package for Android
Now that you've successfully coded an app. Now you want to deploy it to Android. So now we would nee ...
- C# ASP.net 入门之简单通讯录
简单通讯录功能虽然简单,却包括了制作一个网站的基本功能!各个模块可以作为新手入门的参考. 简单通讯录实现功能:1.登录 2.注册 3.后台管理 4.前台登录显示 5.创建联系人 6.密码修改 代码下载 ...
- php设计模式----工厂模式
工厂模式主要是为了代码执行的时候更灵活地new对象,就像工厂流水线一样,批量生产出产品. 目的:简化对象生成过程,更加灵活. 例子如下: <?php /** * User: freephp * ...