VC里使用皮肤美化工具:SkinM…

在对话框程序里使用skinmagic皮肤控件   
 
  1  
  先把skinmagiclib.h文件拷贝入工程目录,  
  在左边的fileview卡片里面,在Resource  files栏目加入SkinMagicLib.lib和DETOURS.lib,这两个文件的路径在哪里无所谓,只要加入就行。可以把它们拷贝入工程的目录下。还有,可以把smf皮肤文件都拷贝入工程的目录下,方便加载皮肤。  
  在FileView卡片里面加入SkinMagicLib.h文件,并在stdafx.h中加入#include  "SkinMagicLib.h"
#pragma comment(lib, "SkinMagicLibMT6Trial") //再加上这句话? 测试版库   

  2  
  在C**App类的文件里面找到InitInstance函数  
  在函数开始部分加入  
  VERIFY(1==InitSkinMagicLib(AfxGetInstanceHandle(),"Demo",
NULL,  NULL  ) );//Demo字样可以随意修改  
  VERIFY(1==LoadSkinFile("corona.smf"));  //皮肤文件只要在同一目录下就行。如果没有,就编译出错  

  3  
  按Ctrl+W,看到ClassWizard,再给C**App类加入ExitInstance函数  
  内容是  
  ExitSkinMagicLib();//为了退出时清理内存  
  return   CWinApp::ExitInstance();  

  4  
  在C**Dlg::OnInitDialog()函数里面  
  结束部分加入  
  SetWindowSkin(   m_hWnd   ,   "Dialog"   );  
  SetDialogSkin("Dialog");  

  5  
  加一个按钮或者菜单,内容是“load   skin”  
  添加按钮点击事件的代码为     
  char   strExt[]= "SkinMagic Files(*.smf)|*.smf||";  
  CFileDialog   dlg(TRUE, "*.smf","*.smf" , OFN_HIDEREADONLY   |   OFN_OVERWRITEPROMPT , strExt  ,this);  
   
  if(dlg.DoModal()==IDOK )  
  {  
  LoadSkinFile((char*)(LPCSTR)(dlg.GetPathName()));  
  }  

  这样就能够随意从文件里面加载皮肤了。
 
  6
  最后,特别要注意:采用*.lib而不是*.dll时,一定要记得使用静态库而不是动态的,不然,会有17个错误在等着你的.
  操作:工程-->设置-->General-->在Microsoft Foudation Classes项选"Use MFC in a Static Library".
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值