【问题标题】:JFace : Clear contents of a ListViewer prior to setting input.(Clear all the contents without using Selection listener)JFace:在设置输入之前清除 ListViewer 的内容。(清除所有内容而不使用选择侦听器)
【发布时间】:2014-06-18 17:28:05
【问题描述】:

我在两个页面中有 2 个向导页面和一个 ListViewer。

在第一个向导页面中,我有一个 ListViewer,如果我从第一个向导页面的 ListViewer 中选择项目并单击“下一步”按钮,那么这些选定的项目将被带到第二个向导页面并显示在第二个向导页面。到目前为止一切都很好,我的问题是:

如果我从第二个向导页面单击“返回”按钮并再次选择我第一次选择的相同项目,然后单击“下一步”按钮,则在第二个页面的列表查看器中显示重复的项目,第一个向导页面的每个项目显示两次。再次如果我返回上一个向导页面并选择相同的项目并再次单击“下一步”,则每个项目在第二个向导页面的列表查看器中显示三次。

有没有办法在设置输入之前清除列表查看器的内容?如果我可以在设置输入之前清除列表查看器的所有内容,那么我可以避免在第二个向导页面中显示重复的项目。我知道通过在查看器中选择项目来清除内容,但是如何在不进行选择或不使用选择侦听器的情况下清除查看器的所有内容?

有人请在这里帮助我,任何建议将不胜感激。

谢谢。

【问题讨论】:

  • ListViewer.setInput 完全替换了之前的所有内容。
  • 感谢 ListViewer.setInput(null) 工作:)
  • 请发表您的评论作为答案,以便我接受:)

标签: java listview swt jface


【解决方案1】:

只需调用ListViewer.setInput 方法即可将旧输入替换为新输入。

使用setInput(null) 将清除输入。

【讨论】:

  • 谢谢格雷格!这很有帮助:)
猜你喜欢
  • 2019-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-12
  • 2014-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多