現在比較流行directui設計思想,即採用windowless方式用api或gdi實現ui的繪製,其中還是有些好的設計思想值得借鑑,網上也有很多類似的討論。
其實我覺得,像tx、baidu這些企業軟體,以及哪些個人開發比較成熟(商業化)的ui library,大部分都是有一套自己的設計構架,但是all roads lead to rome,在我看來,最基本的directui構架無非就是:
directui = layout manager + redraw + message response
其次,redraw,第一點我已經闡明了控制項之間層的關係,接下來自然是要通過lm(layout manager)將控制項一一表現到介面上。如果在你的專案中木有lm,那麼你就慘了,你無法判斷應該用什麼順序依次往你的程式介面上繪製控制項:(,就像一張空白的畫紙,而你想往上面畫很多漂亮的貓貓狗狗,那究竟是先畫貓還是先畫狗呢。。。打住,通過lm,你完全很清楚先畫什麼後畫什麼,lm設計的時候可以要求傳入控制項要有父控制項節點,哦可!那麼在redraw的時候,先遍歷lm,繪製父節點,再繪製子節點,這樣一來,介面就基本具有邏輯雛形了。
最後,該繪製的控制項已經都繪製出來了,剩下唯一需要你實現的就是如何響應使用者對這些控制項的操作,這個應該不用多說了,無非就是捕獲使用者當前lbuttondone/lbuttonup等滑鼠click事件及rect,然後根據lm反饋出屬於那種控制項,以及該控制項對應的事件即可。
囉嗦一大堆,不知道各位看官有沒有對directui實現的背後有所了解呢?
希望以後會有更多優秀的directui軟體問世,其實這也算是ms的輕量級wpf的一種吧?對於像我們這種吃vc++這飯的,說實話還是比較嫉妒混.net的,誰叫vc不是ms親兒子呢。。。
如果了解了上面的廢話,那麼你會對「directui必須用xml解析」之類的誤導newbie的話語產生嘔吐作用,誰說directui不能用txt解析呢^o^
我就是不用任何file做解析又如何呢?你咬我?!
談談Android的一些UI設計
談談android的一些ui設計 2011年08月08日 讓我們一起面對吧。android多型號的裝置以及形狀的諸多因素,讓其設計感覺像是一場艱苦的戰鬥。其神秘的文件使得設計和生產在一開始就顯得很難。在網上找有關android設計的網路資源,你會發現很少有幫助的東西。如果這一切讓你感到沮喪 而且如果...
關於UI設計行業的認識再到認識
相信很多同學和我一樣提及到ui行業時,尤其是連門檻都沒有踏入半步時,總會一臉茫然。我也是一樣的,我剛接觸ui的前半個月,文章讀過好多,作品也看過好多,什麼 小白入門ui的十大建議啊 ui設計師都需要做些什麼 等等,這些內容網上隨便一搜,就很多很多。我雖然對了解的不夠透徹,但是我提取了兩個方面來說。看...
UI設計教程分享 關於海報的合成過程
一張好的產品創意合成海報,能瞬間提公升商品價值感,同時場景和相關元素的融入,讓消費者瞬間明白商品屬性及內涵。同時為商品營造的使用場景擁有更強的代入感,從而刺激轉化。好的創意合成海報能為消費者帶來視覺衝擊的同時,加深對產品的印象。那麼對應的場景提取了大海 沙灘 海邊度假村 瀑布 森林 山川等夏日度假元...