图解CS版的皮肤界面编程示例
一 C# Winform 皮膚界面
<一> ?C#使用IrisSkin皮膚的例子
? ? 以下使用精簡版的C#開發工具SharpDevelop; 如需下載和了解該精簡版開發工具,可參考鄙人博文:
http://blog.csdn.net/bcbobo21cn/article/details/44200205
1 進入SharpDevelop,新建工程skin1,?SharpDevelop添加第三方組件與標準VS略有不同;右擊工具箱,在彈出菜單中選擇Configure Sidebar;
2 在彈出的對話框中單擊Add Components;
3 瀏覽并找到IrisSkin2.dll,單擊Show Components,顯示如下圖內容;
4 工具箱中出現了兩個新控件,SkinEngine,SkinCollectionItem;
5 做一個錄入情報員資料的界面,如下;
? ? 為了簡單,先不連接數據庫,在代碼中綁定ArrayList給DataGridView控件來顯示示例數據;在form.cs中增加一個類如下;
public class qby{
private string bh= string.Empty;
public string 情報員編號
{
get { return bh; }
set { bh = value; }
}
private string name= string.Empty;
public string 情報員姓名
{
get { return name; }
set { name = value; }
}
private string rwrq= string.Empty;
public string 入伍日期
{
get { return rwrq; }
set { rwrq = value; }
}
private string jb= string.Empty;
public string 情報員級別
{
get { return jb; }
set { jb = value; }
}
}
? ? 在窗體啟動時構造ArrayList對象,賦值后綁定到DataGridView;
qby q1=new qby();
q1.情報員編號="007";
q1.情報員姓名="周星星";
q1.入伍日期="1970-07-07";
q1.情報員級別="一級特務";
ArrayList alist1=new ArrayList();
alist1.Add(q1);
dataGridView1.DataSource=alist1;
? ? 在窗體上添加一個SkinEngine; 并在窗體啟動時添加如下語句即可實現皮膚;
this.skinEngine1.SkinFile = @"D:\Users\Administrator\Documents\SharpDevelop Projects\skin1\res\皮膚\Steel\SteelBlue.ssk";
或者把皮膚文件拷貝到exe同一目錄,添加如下語句;
this.skinEngine1.SkinFile = "SteelBlue.ssk";
? ? 皮膚文件SSK,根據自己的需要選擇;
? ? 運行一下,結果如下圖,如果情報部門使用如下界面錄入信息,那也是滿酷的;
? ?示例源碼下載:
http://pan.baidu.com/s/1kTBqCiN
? ? 此處僅為使用示例,請使用正版;
二 VC++的皮膚界面
<一>SkinSharp換膚庫
1 SkinSharp的使用
? ? ? ? 打開VC++,新建一個對話框工程;
? ? ? ??將換膚庫頭文件和鏈接庫文件(SkinH.h, ?SkinH_lib)拷貝到工程的目錄下,和源碼文件同一目錄;
? ? ? ? 在stdafx.h文件中添加如下兩句;
#include "SkinH.h"
#pragma comment(lib, "SkinH.lib")
? ? ? ? 加到對話框實現文件的頭部也可;
? ? ? ? 在對話框的OnInitDialog()函數中添加一句:
SkinH_Attach();
? ? ? ? 注意Skin,不要寫成SKin,
? ? ? ??編譯后,拷貝換膚庫dll和皮膚文件(skinh.dll, skinh.she)到程序生成的目錄;
? ? ? ? 運行程序即看到如下效果;比標準的MFC對話框多了些顏色;
2 做一個獲取系統信息的程序看下效果;
? ? 在對話框資源中添加一個文本框,一個Button;
? ? 在對話框頭文件中添加一個函數聲明;
CString GetID();
? ? 在對話框的實現函數中實現GetID()函數,并在Button1的單擊命令中調用;
void CMyDlg::OnButton1()?
{
? ? m_infostr=GetID();
UpdateData(false);? ??
}
CString CMyDlg::GetID()
{
CString infostr="";
CString str="";
///
//磁盤信息
char ? volname[255]={0};//盤卷標
char ? filename[100]={0};//buffer[512];
DWORD ? sno=0;//盤序列號
DWORD ?maxl,fileflag; ?// |盤符|?
? ? if((GetVolumeInformation("c:", volname,255,&sno,&maxl,&fileflag ,filename,100))) ?
{
str.Format("磁盤卷標:%x",sno);
infostr+=str;
}
return infostr;
}
? ? 按照1的步驟添加皮膚相關內容;運行程序,結果如下圖;比無皮膚好看些;
? ? 源碼下載:
http://pan.baidu.com/s/1eQ6bfCQ
此處僅為演示;請使用正版;
總結
以上是生活随笔為你收集整理的图解CS版的皮肤界面编程示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图解Windows下开发Objectiv
- 下一篇: IOS操作系统