天天看點

一個換膚程式的源代碼

上學的時候大家都是在學C++,也難怪是這樣,C++是程式界的老大。在程式語言裡有種穩如泰山的感覺。是以,我也跟着黨的号召一切學了C++。

不知不覺的就對程式的換膚産生了興趣,看見那些換膚庫魔法搬的就把一個視窗變得哪麼漂亮有個性,是以,我就産生了興趣。 研究了好多換膚庫,看了好多換膚的源代碼,最終開始覺得自己動手寫一個換膚庫,經過了幾周的摸索,終于寫出來一個簡單的可以模仿UI動力公司(http://www.uipower.com/ )的Skin++的一個小程式,也附帶了一個皮膚設計器,但是比較難用

一個換膚程式的源代碼

,還是用Delphi寫的,但是這個換膚代碼是用C++寫的,不過它可以既用在Delphi又可以用在C++的程式上。

其實,這是我上大學的時候寫的,也沒有注意過什麼編碼規範了,代碼備援的很多,也沒有注意過有什麼編碼規範,鑒于是個示範版的程式,也就忍了吧,主要是可以讓人知道換膚的原理就夠了。

你能下載下傳這分源代碼在這裡,http://download.csdn.net/source/461578

1. 解壓他們到任意目錄。

2. 打開後進入Debug目錄。這裡面有四個檔案

    1) Project.exe 用于測試的Delphi程式。

    2) SkinTest.exe 用于測試的VC++程式。

    3) Skin.dll 編譯後的用于連接配接的動态連接配接庫。

    4) Skin.lib 編譯後的用于靜态加載動态連接配接庫的庫檔案。

3. 打開Project.exe或者SkinTest.exe. 就會看到有兩個按鈕, 一個是Skin另外一個是Unskin. 點選Skin按鈕,然後選擇皮膚檔案mini.skin(在目錄Skin 5.0\Designer\SkinFiles ), 你就會看到界面馬上被換膚了。 所有的皮膚檔案在Skin 5.0\Designer\SkinFiles ,你可以試驗不同的皮膚檔案的效果,但是在安裝下一個皮膚之前一定要先點選Unskin按鈕,因為是一個示範的程式,是以,沒有自動的解除安裝前一個皮膚,如果連續加載兩次皮膚程式就會出錯。

請看整個這個包的目錄結構,

Skin 5.0

  -- Debug                            =>> 編譯後的可執行檔案

  -- Designer                       =>> 一個簡單的皮膚檔案的設計器,使用Delphi實作的。

       -- SkinFiles                         =>> 設計好的幾個皮膚檔案

  -- Documents                   =>> 皮膚檔案的格式文檔,其實就幾句話而已

  -- Skin                                 =>> 換膚程式實作的源代碼

  -- SkinTest                         =>> 用于測試的C++源代碼

  -- SkinTestDelphi             =>> 用于測試的Delphi源代碼

如果你們認為這個程式不錯,那拿去看吧,記住是羅伯特寫的啊,如果覺得不好,那我不知道是誰寫的了。

一個換膚程式的源代碼