SkinFeature皮肤界面控件介绍

SkinFeature皮肤界面控件介绍 


SkinFeature 完全支持Win9X/NT/2K/XP,UNICODE/ANSI,能够对目标进程里的所有Widows标准控件,系统菜单,通用对话框等实现换肤。 

而且完全支持PNG图象格式,对于界面美工来说是一个非常可喜的事情。同时,皮肤文件rss可以设置密码,对于我们保护自己的皮肤文件,保护版权来说是非常有必要的!对非商业用途而言,它是完全免费的。关键的是SkinFeature的使用非常简单,很容易添加到已有的工程中。我使用的是 1.0 版,你也可以到它的网站 http://www.SkinFeature.com 去下载最新版本 。 

SkinFeature 支持三种皮肤加载方式,从磁盘文件加载,从资源加载,从内存加载。下面我就说说如何加载磁盘的普通rss皮肤文件: 

首先,要确保你下载了SkinFeature 开发包,我们要用到其中的三个文件: "SkinFeature.h", "SkinFeature.dll" ,"Coolorange.rss" 。 

接着,创建一个 VC 可执行文件工程, MDI/SDI/DIALOG/WIN32 类型的都可以,我以创建一个DIALOG 工程 ResSkin 进行说明 。将"SkinFeature.h" 拷贝到该工程目录下,将"SkinFeature.dll","Coolorange.rss" 拷贝到该工程的输出目录下,例如:"debug\"。 


准备工作全部完成了,现在进入正题: 

1.在ResSkin.cpp 中加入: #include "SkinFeature.h" 

2.在CResSkinApp::InitInstance() 成员函数中添加如下代码 

CResSkinApp::InitInstance() 

      ... 

      //只需添加如下一行代码从文件加载skinfeature 皮肤文件 rss 。其中最后一个参数是皮肤文件的密码 

      //如果有的rss皮肤文件是用户自己希望得到保护,不让别人使用的。会设置加载密码 

      InitializeSkin(); //初始化skinfeature界面库,这句话可加可不加,主要是当多线程中换肤需要加。 

      LoadSkinFile("..\\skin\\Coolorange.rss"); //line 1 

      CResSkinDlg dlg; 

      m_pMainWnd = &dlg; 

      int nResponse = dlg.DoModal(); 

      ... 

int CResSkinApp::ExitInstance() 

      //退出skinfeature界面库,释放内存资源。 

      UnLoadSkin();            //line 2 

    return CWinApp::ExitInstance();   

编译... 一切搞定 ! 


四、结束语: 

也尝试过使用其它的界面开发库,感觉SkinFeature是最容易使用的,加载速度最快,稳定性也不错。

你可能感兴趣的:(多线程,工作,XP,vc++)