作者 Alterto 畢業不到兩年,從 MFC 標準控件自繪一路摸索到 DUI 庫。早期為了做炫酷界面,深入研究 Windows 標準控件自繪(按鈕、Tab、ComboBox 等),但發現兩大痛點:
WS_CLIPCHILDREN、NULL 背景畫刷組合拳。UpdateLayeredWindow),但此時普通子控件無法顯示,繪製邏輯需全遷移到 UpdateLayeredWindow,極其麻煩。後接觸 Duilib、DuiEngine 等開源庫。Duilib 久不更新,Win7 下伸縮仍有黑影;DuiEngine 基於金山 bkwin 重構,開源、活躍、效果驚艷,遂決心寫教程填補文檔空白。
UpdateLayeredWindow 異形窗口,只需改一個 XML 屬性。

毋庸置疑,效果簡直太棒了!絕無任何界面閃爍。
SVN 地址:https://code.taobao.org/svn/duiengine/trunk
安裝 TortoiseSVN,右鍵目錄選 SVN Checkout,填入地址確定。

進入 duiengine\wizard 目錄,執行 wizard.setup.exe。完成後建議重啟電腦,打開 VS2008 命令提示符輸入 SET 驗證環境變量是否已寫入。

打開解決方案,選單「生成」→「批生成」。只需勾選 Win32 平台下的 Debug 和 Release 動態庫(去掉 x64、Debug_ATL 等),點擊生成。

幾分鐘後在輸出目錄得到 DUIEngine_d.dll、DUIEngine.dll 及對應靜態庫。


環境就緒,下一章將講解 XML 佈局、皮膚系統、消息循環等核心機制,帶你真正上手開發炫酷界面。