【问题标题】:How to remove a TreeItem from a Tree in java SWT?java - 如何从Java SWT中的树中删除TreeItem?
【发布时间】:2016-01-23 07:22:46
【问题描述】:

我正在使用 java SWT 进行应用程序开发。

工具中有一个带有一些子节点的 SWT 树,我想删除其中的一些。我尝试使用 remove() 和 removeAll() 方法,但它并没有完全删除该项目。它为 TreeItem 留下了一个空间。

【问题讨论】:

  • 您使用的是 Tree + TreeItem 还是 JFace TreeViewer?

标签: java swt


【解决方案1】:

根据this post,您应该在要完全删除的树项上使用item.dispose()

【讨论】:

    【解决方案2】:

    TreeItemWidget 的后代,其中包含 dispose() 方法。根据文档:

    处置与 接收器及其所有后代。调用此方法后, 接收者和所有后代在发送时都会回答 true 消息 isDisposed()。小部件之间的任何内部连接 该树将被移除以促进垃圾收集。这 如果小部件已被释放,则该方法不执行任何操作。

    所以treeItem.dispose() 会起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-08
      • 1970-01-01
      • 2021-06-26
      相关资源
      最近更新 更多