例子程序最終效果圖:
一直在尋找制作一個 24bit 及以上真彩工具條的簡單有效方法,在各種VC站點都找到了很多有關這方面的文章和介紹,但是都存在一個不足的地方,介紹的不夠詳細,對初學者來說有點難度。最近終於有所發現,因此在這裡將自己在制作真彩工具條方面的小經驗介紹給大家,以期拋磚引玉。
在這裡將介紹兩個重點的內容,一個是制作真彩工具條的圖形工具 Visual toolbar,另一個是在程序中顯示工具條的類CtrueColorToolBar。有了這兩個利器,幾乎能夠非常簡單快速的制作任何真彩工具條。呵呵。
1、Visual Toolbar工具
Visual Toolbar 是一個工具條制作工具,也是目前唯一的這樣的小工具,幾乎是一直夢寐以求的超級好用的小工具。呵呵,當我第一次拿到這個東西的時候,只有一個感慨“太實用了!”。
不知道大家以往作工具條的時候是怎樣的,反正本人覺得很繁瑣,程序員又不是美工,可是為了界面的pp,只好硬著頭皮上了,不可能自己畫那些圖標,那就采用現成的吧,於是只能上網找一些好看得xp圖標,然後用 photoshop 拼啊拼得,一不小心就得從來,費時費力。不知道別人都怎麼做的,反正搜索了所有的制作真彩工具條的文章,都沒有發現作者提供這樣的信息或者方法。每次都很納悶,當然也有一些作者提供了用ico圖標作工具條的方法,不夠相比這個有點復雜了。界面非常簡單,一看就能夠理解和動手操作。只需要加入圖標就能夠生成。如圖所示: 簡單吧,把你找到的一些pp的圖標一個個加進去吧,就能自動合並成一個真彩工具條位圖,而且還可以再拆分,重新組合,前後位置也可以從新排列。呵呵,不到一分鐘,一個pp的bmp位圖就完成了。而且還能同時生成normal圖,hot圖,和disable圖。 有了這些位圖,真彩工具條就算搞定了一半了。 2、CtrueColorToolBar類 CtrueColorToolBar 類是一個專門加載真彩位圖制作 toolbar 的很實用的類。
這個類的下載地址是:http://www.codeproject.com/docking/TrueColorToolBar.asp
確實不錯,用這個類配合上面的工具,是一個很不錯的組合。下面就用一個例子一步步來實現吧。系統 windwos2000+VC 6.0 + sp5。假設用 Visual toolbar 制作好的工具條如圖:
先這樣放著吧,不理會。
將這兩個文件導入進去。然後從新編譯一下程序,這時候會發現多了一個CtrueColorToolBar類,這就是了。
一個是normal圖形,一個是disable圖形:
Normal 位圖
Disable 位圖
先將這兩個位圖文件拷貝到程序的 res 目錄下面,然後在 ResourceView 中單擊右鍵,用 Import 導入這兩個位圖,程序會自動生成兩個ID號,當然你可以修改ID為IDB_NORMAL和IDB_DISABLE。可以發現,這個例子想要的是7個 48×48 拼成的工具條。這個時候將用到系統自動生成的工具條了。
#include "TrueColorToolBar.h"然後找到程序CmainFrame框架類的操作方法OnCreate函數。這裡可是產生工具條的地方。增加這樣一條語句:
m_wndToolBar.LoadTrueColorToolBar( 48, IDB_NORMAL, IDB_NORMAL, IDB_DISABLED);3個參數分別代表的意義是:48表示工具條按鈕大小是48×48,第二個是normal工具條位圖ID,第三個是hot工具條位圖ID,最後一個是disable工具條位圖ID。 增加的位置你參考例子代碼。 現在可以編譯運行了,怎麼用,真彩工具條出來了吧。
本文很詳細的介紹了制作真彩工具條的方法,並推薦了兩個工具。個人感覺這種方法比較快速簡單。希望能夠給初學者提供一些幫助,也希望能夠拋磚引玉得到其它好的方法。
本文示例代碼或素材下載