Posted on 2009-10-09 14:15
S.l.e!ep.¢% 閱讀(1409)
評(píng)論(2) 編輯 收藏 引用 所屬分類:
DirectUI
http://www.uieasy.cn/directui/
DirectUI界面庫(kù) 取名自微軟的一個(gè)窗口類名“DirectUIHWND”,意為Paint on parent dc directly。 即子窗口不以窗口句柄的形式創(chuàng)建,只是邏輯上的窗口,繪制在父窗口之上。微軟的“DirectUI”技術(shù)廣泛的應(yīng)用于Window XP系統(tǒng),Media Player播放器,即時(shí)通訊工具M(jìn)SN Messager。
???? 傳統(tǒng)的window界面,是用戶窗口的層次排列,這種方式有很多局限性。目前的開(kāi)發(fā)環(huán)境我們可以很快的使用win32控件構(gòu)造出標(biāo)準(zhǔn)的干凈的界面,但是我們同時(shí)也會(huì)立刻意識(shí)到如果我想像界面更加漂亮,更加炫一點(diǎn)就比較麻煩了。Windows控件提供的Custom-Draw/Ower-Draw技術(shù)局限太多,基本上沒(méi)有透明等效果支持,同時(shí)控件布局方面也比較古板。
???? DirectUI界面庫(kù)使用XML來(lái)描述界面風(fēng)格,界面布局,使用腳本語(yǔ)言(如vbscript,javascript,lua)等來(lái)作為界面元素和程序邏輯的交互。從這方面來(lái)看,DirectUI界面庫(kù)可以看成是一個(gè)迷你的微軟WPF,mozilla XUL,或者Adobe的Flex,這些平臺(tái)代表的應(yīng)用程序的發(fā)展方向,同時(shí)也有很多相似的架構(gòu),比如多采用類似XML的方式描述定義界面,使用腳本語(yǔ)言 (xul使用javascript,flex使用Action Script)來(lái)作為控制界面元素并和程序邏輯之間交互。DirectUI 界面庫(kù)采用相似的設(shè)計(jì),使用xml描述界面,同時(shí)使用javascript,或者vbscript來(lái)作為界面和邏輯的粘合。在控件設(shè)計(jì)方 面,DirectUI界面庫(kù)更多的融入了XUL,WPF,F(xiàn)lex等控件設(shè)計(jì)理念,并沒(méi)有一味的照搬window標(biāo)準(zhǔn)控件,以期望其成為一款真正使用實(shí)用 的界面庫(kù)。
????? 這種界面庫(kù)設(shè)計(jì)的最大的好處在于可以很方便的構(gòu)建高效,絢麗的,非常易于擴(kuò)展的界面。國(guó)外如微軟,國(guó)內(nèi)如騰 訊,百度等公司的客戶端產(chǎn)品多采用這種方式來(lái)組織界面,從而很好的將界面和邏輯分離,同時(shí)易于實(shí)現(xiàn)各種超炫的界面效果如換色,換膚,透明等。DirectUI 界面庫(kù)旨在滿足客戶端界面快速開(kāi)發(fā)的需要,同時(shí)融入業(yè)界前沿的皮膚技術(shù),為用戶創(chuàng)建更加高效,專業(yè)的界面。
使用XML和腳本構(gòu)造界面
- 使用xml配置界面控件布局
- 使用腳本(vbscript, jscript)控制控件屬性,響應(yīng)事件
- 使用xml描述界面風(fēng)格
- XML語(yǔ)法簡(jiǎn)單,易于學(xué)習(xí)和掌握
其他關(guān)鍵特性
- 基于Win32 API,沒(méi)有framework依賴。
- 支持改變皮膚色調(diào)
- 支持大多數(shù)控件透明,包括子窗口透明
- 支持png, bitmap, gif, ico圖片格式。支持帶透明通道的png圖片