Eclipse華麗轉(zhuǎn)身之控件表格工廠
KTree表格工廠
AbstractKTreeFactory和AbstractKTableFacotory區(qū)別不大。通過UI界面可以看到區(qū)別,“參數(shù)”和“返回值”就好比一個(gè)樹的跟節(jié)點(diǎn)root,而參數(shù)param1和參數(shù)param2為“參數(shù)”root的子節(jié)點(diǎn)。AbstractKTreeFactory中是使用KTreeBuilder來構(gòu)造表格的,KTreeBuilde中有一個(gè)重要的屬性ITreeNode,下圖是它的類關(guān)系圖:
DefaultTreeNode實(shí)現(xiàn)了ITreeNode的接口并且繼承了AbstractPropertyAwareElement(能夠監(jiān)控屬性改變的類,當(dāng)屬性改變時(shí),會發(fā)出相應(yīng)的信息通知所有的監(jiān)聽者),KTreeBuilder類里面有一個(gè)方法叫做setRootNode()可以設(shè)置樹的根節(jié)點(diǎn),而ITreeNode的子類都可以構(gòu)造自己的節(jié)點(diǎn)然后通過setParent()的方法設(shè)置父類節(jié)點(diǎn),或者調(diào)用add()方法來添加自己的孩子節(jié)點(diǎn),其中重要的是DefaultTreeNode的setUserObject()方法,它是用來為每個(gè)節(jié)點(diǎn)set一個(gè)對象的方法。我們來看一個(gè)示例(邏輯流出入?yún)⒌臄?shù)據(jù)轉(zhuǎn)換器BusinessLogicTranslator):
Table表格工廠
AbstractTableFactory和AbstractKTableFactory基本很相像,看下一它的類關(guān)系圖如下:
在AbstractTableFactory中構(gòu)造表格的TableBuilder可以從上類圖中看出來,其實(shí)是就是封裝了eclipse自身的TableViewer,而不是AbstractKTableFactory中封裝的KTable,這是兩者之間本質(zhì)的區(qū)別。
IKTableColumn
說完了表格工廠以后,我們回頭再來看之前表格工廠里提到的一個(gè)方法getCloumns(),在這個(gè)方法中返回的是IKTableColumn []的數(shù)組。上文圖中的表格列都是最基本的輸入框也就是KPropertyTableColumn,除此之外還有哪些Column的封裝呢?
通過此圖列舉的類不難看出,表格Column的常用封裝都可以滿足了,無論是下拉框、復(fù)選框、還是帶有圖片的Column。那么下一篇我們就來詳細(xì)說一下,表格工廠Column的封裝,除此之外還有更為復(fù)雜的Column封裝(如圖),以及其他幾個(gè)控件工廠的介紹。
- end -

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
最新活動更多
-
3月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會
-
4月30日立即下載>> 【村田汽車】汽車E/E架構(gòu)革新中,新智能座艙挑戰(zhàn)的解決方案
-
5月15-17日立即預(yù)約>> 【線下巡回】2025年STM32峰會
-
即日-5.15立即報(bào)名>>> 【在線會議】安森美Hyperlux™ ID系列引領(lǐng)iToF技術(shù)革新
-
5月15日立即下載>> 【白皮書】精確和高效地表征3000V/20A功率器件應(yīng)用指南
-
5月16日立即參評 >> 【評選啟動】維科杯·OFweek 2025(第十屆)人工智能行業(yè)年度評選
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達(dá)AI統(tǒng)治的開始
- 2 北電數(shù)智主辦酒仙橋論壇,探索AI產(chǎn)業(yè)發(fā)展新路徑
- 3 “AI寒武紀(jì)”爆發(fā)至今,五類新物種登上歷史舞臺
- 4 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 5 國產(chǎn)智駕迎戰(zhàn)特斯拉FSD,AI含量差幾何?
- 6 光計(jì)算迎來商業(yè)化突破,但落地仍需時(shí)間
- 7 東陽光:2024年扭虧、一季度凈利大增,液冷疊加具身智能打開成長空間
- 8 地平線自動駕駛方案解讀
- 9 封殺AI“照騙”,“淘寶們”終于不忍了?
- 10 優(yōu)必選:營收大增主靠小件,虧損繼續(xù)又逢關(guān)稅,能否乘機(jī)器人東風(fēng)翻身?