程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> 免費界面換膚軟件USkin的使用

免費界面換膚軟件USkin的使用

編輯:關於VC++

一、介紹

我們都知道,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版所有已知錯誤。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved