【问题标题】:Treeview inside getChildern()getChildern() 中的树视图
【发布时间】:2015-04-02 18:16:25
【问题描述】:

是否可以在内容提供者的 getChildern() 方法中创建树视图?

我有一个树视图,它的 getElements() 方法显示一些来自该树中每个节点的枚举的节点我想要另一个树视图。因此,当用户展开一个根节点时,应该有另一个树视图。

谢谢

【问题讨论】:

    标签: java treeview rcp emf


    【解决方案1】:

    不,您不能嵌套树查看器。您必须为代表整棵树的树使用数据模型。

    假设您有一个类 TopLevelElement 代表树中的一个顶级元素,而类 Level1ElementLevel2Element 代表第一级和第二级子级。那么您的内容提供者方法将类似于:

    @Override
    public Object [] getElements(Object inputElement)
    {
      return array of TopLevelElements object;
    }
    
    @Override
    public Object [] getChildren(Object parentElement)
    {
      if (parentElement instanceof TopLevelElement)
       {
         return array of Level1Element children of the top level element
       }
      else if (parentElement instanceof Level1Element)
       {
         return array of Level2Element children of Level1Element
       }
      else if (parentElement instanceof Level2Element)
       { 
         ... return any level 3 elements
       }
    
      return new Object[0];  // Unknown tree element
    }
    

    【讨论】:

    • 我的问题是父元素是一个枚举文字:(
    • 1 级元素是组件,2 级是子组件,而级别是未知的,即子组件可以有更多的子组件等等......
    • 你不需要知道关卡,只需要知道你给定的'parentElement'的子元素。
    • 我们可以聊聊吗?
    • 非常感谢……你总是来救我的命 :)
    猜你喜欢
    • 1970-01-01
    • 2021-12-31
    • 2017-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-21
    • 2010-09-12
    相关资源
    最近更新 更多