Duilib教程-简单介绍
在讀這篇博客的時候,可能您已經對duilib有一定的了解。所以,我并不打算對duilib進行過多的介紹。它的內核首先由外國人編寫,后來由國人一個小組接過來繼續編寫,于是就有了現在的Duilib。
?
1.下載Duilib
首先它托管在Google,后來不知道是不是由于大陸將?Google?全面封鎖,將搜索引擎禁用了不算,還將技術網站都封閉了。所以,Duilib又托管到了?Github。所以在學習它之前,你需要學習如何利用Github,將Duilib下載到本地進行編譯、運行。
?
1)首先下載?GitHub?for?Windows.?https://windows.github.com/
2)注冊一個帳號。
3)打開網站https://github.com/duilib/duilib
?
?
看到網站右邊的按鈕,如上圖的紅框處,點擊”Clone?in?Desktop”按鈕,保存到自己的帳號中,并能下載到本地中,保存到本地,主要是為了便于即時更新。當Duilib有更新時,你可以利用本地的Github工具進行更新。
?
4)打開本地的目錄。
?
?
如上圖右上角的紅框操作。
?
2.編譯DUILIB
DuiDesigner.sln?這個文件是?XML?編輯器。
DuiLib.sln?這個是DUILIB?源文件及Demo源文件。
使用VS2008進行編譯。
?
3.Dui原理小解。
原來的WINDOWS界面,主要是要WND疊加組成,如:
?
每個WND都有自己的消息處理循環。這樣不好的地方是,
1)繪制不方便。比如你要在一個Button上繪制一張半透明的背景圖片,如果你使用了?MemDC,要處理透明繪制就會相當麻煩,甚至會有難以預測的BUG。
2)可以給病毒可趁之機。可以利用FindWindow查找Button的句柄,然后向它發送WM_LBUTTONDOWN和WM_LBUTTONUP消息,就可以實現單擊的效果。以前舊版的QQ就存在這個BUG。現在已經很少有這個BUG了。
?
Dui一個Wnd它的上面沒有多余的Wnd,所以的控件都是虛擬出來的,并不具備自己的消息循環,它們都用WND的消息循環。簡單的描述如下圖:
?
將消息傳遞到控件,主要就是通過?control_from_point?這樣的一個函數,通過鼠標的座標點進行判斷是哪個控件,并將由該控件進行響應鼠標消息。
?
Duilib?的簡單介紹就到這里了。
在學習一個東西的時候,我并不傾向于一開始就學習內核、源碼。我覺得首先應該學習如何何用它,當你會用它了,去理解它的內核代碼才會順暢,也才看得明白。
所以,下一節將介紹?UIDesigner?的使用。
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的Duilib教程-简单介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QT学习笔记(2)----- QT安装教
- 下一篇: Duilib教程-HelloDuilib