2

我必须在我的向导页面中创建一个表,并且我想使用 TableViewer 创建它。我正在使用 WindowBuilderPro 来设计我的向导页面。TableViewer 控件在 WindowBuilderPro 的调色板中可用,但我不知道如何正确使用它。

有没有人用过同样的?

非常感谢提前!!

4

1 回答 1

3

您有两种方法可以用内容填充 TableViewer(类似于 JFace 中的 TableViewers):

  1. 您可以手动定义内容提供者和标签提供者。内容提供者必须返回一组对象,它们代表表格的每一行;而 TableLabelProvider 将返回的对象转换为列中的文本。内容和标签提供者将在左侧的“属性”框中进行设置。在这种情况下,生成的代码应类似于以下片段:http ://wiki.eclipse.org/JFaceSnippets#Snippet001TableViewer或http://wiki.eclipse.org/JFaceSnippets#Snippet007FullSelection

  2. 另一方面,您可以定义 JFace 数据绑定来用内容填充表格。在这种情况下,您必须定义一个相应的绑定,它返回所有内容的列表;此外,您必须创建一个标签提供程序,其工作方式与前一个类似。

还有一种方法可以使用更新的 API 填充表格内容,然后由 WindowBuilder 直接支持:您可以为每列创建 TableViewerColumns 和 ColumnLabelProviders,从而为标签提供程序生成更好的代码(而且这个 API 更新,所以它应该是新的基于 JFace 的代码的首选) - 但在这种情况下,您必须手动创建代码。请参阅 Lars Vogel 的JFace Table 教程

此外,如果您以前不了解 JFace Viewer 框架,我建议您阅读JFace FAQ中列出的前几个问题,以更好地理解这些想法(因此,Lars Vogel 的教程也很好)。

于 2011-08-08T20:59:17.537 回答