扩展树节点

发布于 2024-12-22 09:40:43 字数 308 浏览 0 评论 0原文

我是 eclipse RCP 的新手,事实上也是 java 的新手。有一个非常基本的问题。 我有一个 JFace TreeViewer。我想扩展其中的一个特定节点。问题是我只有节点的名称。除此之外没有任何信息。 我尝试使用treeItem,将其字符串与我拥有的节点名称的字符串进行比较,从而获得节点。我尝试在树的内容提供者中扩展它。但我没有得到所需的输出。当我在日志中检查它时,我发现它已展开,但没有显示在查看器中。我在 contentprovider 的 display.asyncExec 方法中执行此操作。

我希望问题很清楚。

I am new to eclipse RCP, well as a matter of fact to java also. Have a very basic question.
I have a JFace TreeViewer. I want to expand a particular node in that. The catch is I only have the name of the node. and no information apart from that.
I tried using treeItem, compared its string with that of the node name that I have, thus I got the node. I tried expanding it in the contentprovider of the tree. But i am not getting the desired output. When I check it in the log i get that it is expanded but it doesnt show in the viewer. I am performing this in display.asyncExec method in the contentprovider.

I hope the question is clear.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薄荷梦 2024-12-29 09:40:43

JFace 查看器的创建是为了让开发人员不必摆弄 SWT 小部件,而是可以使用更高级别的 API。当使用 JFace 的查看器/内容提供程序/标签提供程序时,您应该控制树中的节点(因此,当您说您只知道名称时,我假设您直接使用 SWT Tree)。您可以从 Eclipse help 中阅读有关 JFace 查看器的信息

要展开树节点,请使用 TreeViewer (级别相对于展开的节点,不是根树)。

JFace viewers were created so that developers wouldn't have to mess around with SWT widgets and could use higher level API instead. When using JFace's viewer/content provider/label provider you should be in control of what nodes are in your tree (thus when you say you only know the name, I assume you are using SWT Tree directly). You can read about JFace viewers from Eclipse help.

To expand a tree node use expandToLevel(Object elementOrTreePath, int level) method of TreeViewer (the level is relative to the node that is expanded, not the root of the tree).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文