Posted on 2009-09-11 16:54
亂78糟 閱讀(5015)
評論(6) 編輯 收藏 引用 所屬分類:
界面控件
最近因為需要用到一個類似V8那個標簽tab控件,在網上搜索了下,發現沒有符合要求的,就只好自己動手豐衣足食。
這個控件有點像V8和FireFox標簽的集合體。

具體的請參看代碼vstab.h的描述,這里就不多廢話,下面簡單講一下如何自繪。
第一步、我想要的功能? 明確自己將要繪制控件的功能是首要考慮的問題,有的放矢方能百發百中。
第二步、從哪里開始? 如果你想自己實現一整套UI類(例如支持多風格的界面庫),那么,從零開始吧,MFC提供的大部分都不符合你的要求。如果僅僅繪制個別的,例如本例,具體從哪里繼承派生就看你的選擇。支持字體、顏色、進度條、編輯框的列表你完全可以從CListCtrl派生,從CWnd派生就完全沒必要。如果要做一個類似QQ的包含內容十分豐富的好友列表,html,css,估計是少不了的。
第三步、用戶如何使用? 功能和起點都想好了,然后就是給用戶的接口。一個合乎用戶使用習慣的讓人一看就明白的接口名字是控件開發者必須要仔細考慮的問題,然后public、protect、private加上去,制約用戶的行為。用戶使用的時候不用考慮控件內部是怎么實現的,你給我接口,我完成功能,各司其職。
第四步、拿起畫筆畫刷開工 自繪是一門藝術,記住這句話。
第五步、指導手冊?
沒必要提供如同msdn那樣詳細完整的手冊(除非你的控件接口內容非常之多),若干個demo+code注釋足矣。
好了,廢話完了,源碼這里下載,如果有人有更好的代碼或發現BUG請告訴我,非常的感謝。