订阅
纠错
加入自媒体

Eclipse华丽转身之控件表格工厂

2020-08-26 10:48
EAWorld
关注

KTree表格工厂

Eclipse华丽转身之控件表格工厂

AbstractKTreeFactory和AbstractKTableFacotory区别不大。通过UI界面可以看到区别,“参数”和“返回值”就好比一个树的跟节点root,而参数param1和参数param2为“参数”root的子节点。AbstractKTreeFactory中是使用KTreeBuilder来构造表格的,KTreeBuilde中有一个重要的属性ITreeNode,下图是它的类关系图:

Eclipse华丽转身之控件表格工厂

DefaultTreeNode实现了ITreeNode的接口并且继承了AbstractPropertyAwareElement(能够监控属性改变的类,当属性改变时,会发出相应的信息通知所有的监听者),KTreeBuilder类里面有一个方法叫做setRootNode()可以设置树的根节点,而ITreeNode的子类都可以构造自己的节点然后通过setParent()的方法设置父类节点,或者调用add()方法来添加自己的孩子节点,其中重要的是DefaultTreeNode的setUserObject()方法,它是用来为每个节点set一个对象的方法。我们来看一个示例(逻辑流出入参的数据转换器BusinessLogicTranslator):

Eclipse华丽转身之控件表格工厂

Table表格工厂

Eclipse华丽转身之控件表格工厂

AbstractTableFactory和AbstractKTableFactory基本很相像,看下一它的类关系图如下:

Eclipse华丽转身之控件表格工厂

在AbstractTableFactory中构造表格的TableBuilder可以从上类图中看出来,其实是就是封装了eclipse自身的TableViewer,而不是AbstractKTableFactory中封装的KTable,这是两者之间本质的区别。

IKTableColumn

说完了表格工厂以后,我们回头再来看之前表格工厂里提到的一个方法getCloumns(),在这个方法中返回的是IKTableColumn []的数组。上文图中的表格列都是最基本的输入框也就是KPropertyTableColumn,除此之外还有哪些Column的封装呢?

Eclipse华丽转身之控件表格工厂

通过此图列举的类不难看出,表格Column的常用封装都可以满足了,无论是下拉框、复选框、还是带有图片的Column。那么下一篇我们就来详细说一下,表格工厂Column的封装,除此之外还有更为复杂的Column封装(如图),以及其他几个控件工厂的介绍。

Eclipse华丽转身之控件表格工厂

 - end -  


<上一页  1  2  3  
声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    人工智能 猎头职位 更多
    扫码关注公众号
    OFweek人工智能网
    获取更多精彩内容
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号