WEB开发网
开发学院软件开发VC 使用免费界面换肤软件 USkin 阅读

使用免费界面换肤软件 USkin

 2007-03-17 21:58:59 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 一、介绍我们都知道,Skin以前是一项比较难的技术,使用免费界面换肤软件 USkin,但至从WindowsXP推出以来,Skin或者说Theme变得很普遍,虽然WindowsXP可以支持Theme,但当我们改变WindowsXP的风格时,更快捷高效,更强的扩充.3.新增的绘制模式选项,

本文示例源代码或素材下载

一、介绍

我们都知道,Skin以前是一项比较难的技术。但至从WindowsXP推出以来,Skin或者说Theme变得很普遍。虽然WindowsXP可以支持Theme,但当我们改变WindowsXP的风格时,所有支持WindowsXP风格的应用程序都变成一样的风格,如何让我们的软件不仅具备Skin,而且要靓丽更吸引人更有个性更加与重不同呢。这里我给大家推荐一款换肤软件USkin。

为什么要使用USkin?

1.节省您的开发时间。您不必花太多的精力在界面美化上。只需完成软件功能,加入3行代码即可实现换肤功能。

2.美化软件界面。

3.支持颜色主题。一个皮肤当100个用。

4.免费。不用花一分钱就能拥有换肤功能。

5.同样提供免费的皮肤编辑器。您可以自己DIY出个性界面。

图一 USkin界面效果

图二 USkinBuilder界面

二、USkin特性

支持20多种Windows标准控件

支持文件、颜色、打印、字体等标准对话框

支持第三方/自定义控件

支持所见即所得的皮肤文件编辑

支持MDI/SDI/Dialog风格的应用程序

支持WindowsBlind皮肤文件导入,多达万个现成皮肤供您使用

支持颜色主题,一套皮肤可以演变成多种皮肤 *

支持多种编程语言

支持多线程

支持动态换肤

支持所有弹出菜单,包括Edit控件右键弹出菜单

只需三行代码即可实现换肤

支持ListView/TreeView等控件滚动条换肤

皮肤资源文件所占空间小 三、如何使用代码

第一步,包含USkin.h头文件.

#include "uskin.h"第二步在 InitInstance 函数里调用 USkinInit .

BOOL CSDIApp::InitInstance()
{
  
  InitCommonControls();
  CWinApp::InitInstance();
  if (!AfxOleInit())
  {
    AfxMessageBox(IDP_OLE_INIT_FAILED);
    return FALSE;
  }
  AfxEnableControlContainer();
  // Init USkin lib and load media skin file
  USkinInit(NULL,NULL,_T("media.u3"));
  SetRegistryKey(_T("Local App"));
  LoadStdProfileSettings(4);
  
  CSingleDocTemplate* pDocTemplate;
  pDocTemplate = new CSingleDocTemplate(
    IDR_MAINFRAME,
    RUNTIME_CLASS(CSDIDoc),
    RUNTIME_CLASS(CMainFrame),
    RUNTIME_CLASS(CSDIView));
  if (!pDocTemplate)
    return FALSE;
  AddDocTemplate(pDocTemplate);
  this->RegisterShellFileTypes();
  TCHAR sz[500];
  ::GetModuleFileName(NULL,sz,500);
  AfxMessageBox(sz);
  
  CCommandLineInfo cmdInfo;
  ParseCommandLine(cmdInfo);
  
  if (!ProcessShellCommand(cmdInfo))
    return FALSE;
  
  m_pMainWnd->ShowWindow(SW_SHOW);
  m_pMainWnd->UpdateWindow();
  
  //if you want do your own subclass,call USkinInit here
  //USkinInit(NULL,NULL,_T("media.u3"));
  return TRUE;
}
最后在退出前调用 USkinExit即可.

int CSDIApp::ExitInstance()
{
  USkinExit();
  return CWinApp::ExitInstance();
}
四、更新历史

1.免费全新的SkinBuilder2.0.独创国内唯一完善的MDI模式的SkinBuilder,支持用户自定义皮肤对象!

2.重组核心架构,更快捷高效,更强的扩充.

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

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

5.文档完善齐全!

6.拥有版权证明!大家可以放心使用.

7.修正1.0版所有已知错误。

Tags:使用 界面

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接