這是winform模仿QQ聊天窗口皮膚控件下載,本人模仿QQ做了一個(gè)聊天軟件,本人的解決思路是:把聊天內(nèi)容發(fā)送后存儲(chǔ)到數(shù)據(jù)庫(kù),然后在數(shù)據(jù)庫(kù)查詢剛發(fā)消息把他顯示在上面的那個(gè)窗口。
winform模仿QQ聊天窗口皮膚控件最近到年底了,比較忙,C# WinForm控件開(kāi)發(fā)和美化 也好長(zhǎng)時(shí)間沒(méi)有更新了。這段時(shí)間主要是在嘗試著做一套自己的Winform皮膚控件,F(xiàn)在看到的客戶端程序中,我發(fā)現(xiàn)的皮膚做得最牛的是迅雷7(只是說(shuō)皮膚),再就是QQ了?粗咐7的界面思考了半天(真正的半天),我決定放棄模仿迅雷7的念頭,難度太大了。看著QQ的界面,覺(jué)得我做聊天軟件的可能性不大,即使我把這個(gè)皮膚做出來(lái)了(當(dāng)然難度也很大),在實(shí)際的項(xiàng)目中很難用到。后來(lái)有一天去機(jī)房的時(shí)候看到一個(gè)管理人員在用Foxmail,我看到這個(gè)軟件的界面就眼前一亮:界面效果還可以,控件效果比較簡(jiǎn)單,做換膚的話應(yīng)該比較容易實(shí)現(xiàn);貋(lái)后趕緊下了一個(gè)Foxmail裝上,一邊研究一邊開(kāi)發(fā),花了2周的時(shí)間作出了一套仿Foxmail的皮膚控件,感覺(jué)相當(dāng)?shù)呐d奮,今天事情不多,就發(fā)到園子里和大家分享一下。順便也寫(xiě)一下設(shè)計(jì)思路,希望對(duì)有這方面需求的人有所幫助。
1、實(shí)現(xiàn)了調(diào)色和更換底紋兩種基本的換膚功能,具體操作方式在界面中應(yīng)該很清楚的就能看出來(lái)了。
2、重新開(kāi)發(fā)了幾個(gè)具有換膚功能的控件,主要有Panel、Trackbar、TabControl和幾個(gè)Strip控件。
3、在換膚和調(diào)整窗體大小的時(shí)候沒(méi)有很明顯的閃爍問(wèn)題。(電腦的配置是奔四處理器,4G內(nèi)存,集成顯卡。)
皮膚控件要處理的顏色問(wèn)題有兩類,界面的顏色和圖片的顏色。
先來(lái)說(shuō)一下界面的顏色,在這套皮膚控件中,只使用了一個(gè)基準(zhǔn)色BaseColor,其它的顏色都是通過(guò)這個(gè)BaseColor計(jì)算出來(lái)的。顏色的計(jì)算使用HSL顏色比較方便,所以需要
先把RGB顏色轉(zhuǎn)換為HSL顏色進(jìn)行處理,處理方式很簡(jiǎn)單,就是加大或減小顏色的L值,以實(shí)現(xiàn)加深或加淺顏色的目的,然后在將HSL顏色轉(zhuǎn)換回RGB顏色在界面上使用。