我正在构建一个RCP应用程序。为此,我正在使用自定义资源管理器。我在自定义内容和标签提供程序中使用树查看器。
我现在的问题是,我不能将孩子们显示为根对象的子对象。
设置如下:我获得了一个包含所有子级(在特定层次结构中)的对象。我可以把孩子们从那个物体里弄出来,但我不能像孩子一样展示他们。我的内容提供者只将它们显示为根元素。
因此,我的问题是,当我还是孩子的时候,我该如何把他们吊死呢?getElement方法只返回一个对象数组,我不知道如何确定该数组中的对象是父对象还是子对象。
我希望你能帮我
发布于 2017-09-01 10:00:19
对于TreeViewer,您使用实现ITreeContentProvider的内容提供程序。
getElements方法的ITreeContentProvider应该只返回树的顶层元素。
要确定一个树元素是否有任何子元素,树查看器将调用内容提供者hasChildren方法:
public boolean hasChildren(Object element)这里,element是树中的一个现有元素。
要获取元素的子元素,树查看器将调用getChildren方法:
public Object[] getChildren(Object parentElement)提供程序返回元素parentElement的任何子元素。如果没有子数组返回空数组,则永远不要返回null。
有关详细信息,请参阅这里
https://stackoverflow.com/questions/45997282
复制相似问题