当前位置: 首页 > 知识库问答 >
问题:

将 JFace 表查看器添加到 SWT 表

贺宝
2023-03-14

在一个工具中,我正在做,我有一个表格,我像这样添加:

public void addTable() {

    table = new Table(this, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);

    griddata = new GridData(GridData.FILL_BOTH);
    griddata.horizontalSpan = 2;

    table.setLayoutData(griddata);
    table.setHeaderVisible(true);

    final TableColumn tc1 = new TableColumn(table, SWT.LEFT);
    final TableColumn tc2 = new TableColumn(table, SWT.CENTER);
    final TableColumn tc3 = new TableColumn(table, SWT.CENTER);

    tc1.setText("ID");
    tc2.setText("Firstname");
    tc3.setText("Lastname");

    tc1.setWidth(30);
    tc2.setWidth(100);
    tc3.setWidth(100);

    final TableItem item1 = new TableItem(table, SWT.NONE);
    item1.setText(new String[] { "ABC", "Hatton", "Kentucky" });
    final TableItem item2 = new TableItem(table, SWT.NONE);
    item2.setText(new String[] { "DEF", "Warner", "Ohio" });
}

效果很好,但现在,我想添加一个JFace表查看器,但是上面的文档似乎只关注表布局,而不是表。我以为,桌面视图会被添加到表中吗?

共有1个答案

蔡宏大
2023-03-14

同时想明白了。这只是对第一行的修改,就像这样:

        TableViewer viewer = new TableViewer(this, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); 
    table = viewer.getTable();

这样,你就可以像以前一样收缩桌子了。

 类似资料:
  • 当我尝试创建复合表列时出错?

  • 我有一个5列的表查看器。在第一列中,我检查了一些条件并添加了一个图像,其余的列将有文本,但当我尝试添加图像,然后用文本添加其余的列时,第二列的文本就位于第一列中的图像旁边。下面是我的示例代码片段: 问题是字符串“street”位于第一列中图像的右侧,但我希望字符串“street”位于第二列中,其余字符串位于后续列中。我做错了什么?如何从第二列添加表项?

  • 我正在使用SWT创建一个新项目。我将在项目中有3或4个不同的表。我对SWT相当陌生,我发现自己在问自己是应该只使用< code >表格还是应该使用< code >表格查看器。 我想学习一些好的指导方针,告诉我什么时候只使用< code>Table以及什么时候< code>TableViewer是最佳途径。 < li >使用< code>TableViewer而不是< code>Table有什么好处

  • 是否有办法将AWT侦听器添加到SWT组件? 我以前制作了一个主要在AWT和Swing组件中运行的应用程序。现在,我有热键功能,它依赖于一个定制的库,该库监听全局键事件并返回相应的AWT键代码。 当我改变整个应用程序并使用SWT组件时,我的问题就出现了。正如我们所知,一些键现在返回一个不同的键代码,这扰乱了整个热键功能。 我想到的最初解决方案是: A.使用javax。摆动jtextfield作为my

  • 在eclipse RCP应用程序中,我有一个具有VIRTUAL样式的桌面浏览器,用于显示大量数据。 我正在使用自定义内容提供程序实现IStructuredContentProvider 我需要通过所有列对表数据进行排序。 所有列的排序都非常好。但是,我在表上有一个选择事件,并且有一些基于表选择的操作。 假设以下项目按顺序显示在视图上 A B C D E 单击特定列后,视图按下面提到的顺序排序 E

  • 我遇到了一个棘手的问题。 在摆动环境中,有一个功能在AWT组件中可用文本区域。但是,这在 JFace 或 Swing 环境中都不存在。 有人想出解决办法吗?我必须自己制作界面吗? 提前谢谢