问题标签 [tableviewer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3702 浏览

java - SWT TableViewer 具有一个列或表项,其中多个按钮充当操作

我正在尝试在 SWT 中呈现具有以下行的下表:

名称1 | anotherProperty |BUTTON1(EDIT) BUTTON2(REMOVE) BUTTON3(DEACTIVATE)

使用SWT - Tableviewer 将删除按钮添加到表中的列中,我只能逐列呈现一个按钮。

有没有办法做到这一点?

0 投票
1 回答
7385 浏览

sorting - 如何获取 JFace 的 TableViewer 的有序元素?

我已经根据Vogella 的说明(转载如下)实现了 JFace 的 TableViewer 排序。碰巧排序仅在图形界面中进行(它没有反映在原始数据结构中),我需要按照它们在 GUI 中显示的顺序获取元素。

或者,反映原始数据结构中排序的实现也适合。



0 投票
1 回答
2429 浏览

java - 动态向表格查看器添加内容

我正在实现这样的表格查看器

现在我想向这个表添加内容,第一列我想添加复选框,另外两列想在 for 循环中动态添加字符串值,我如何将这些内容添加到表查看器。

0 投票
1 回答
512 浏览

java - getViewer().setSelection() 不适用于 FocusCellOwnerDrawHighlighter

我想将焦点设置在TableViewer.

焦点和输入处理定义如下:

选择一行的代码是:

问题是,一旦我使用FocusCellOwnerDrawHighlighter,setSelection就不再起作用,这意味着没有选择任何行。

任何想法我做错了什么?

问候罗杰

0 投票
1 回答
348 浏览

eclipse-plugin - Virtual TableViewer 排序导致选择问题

我们的应用程序是一个 RCP 应用程序,需要显示数千个项目的表格。出于这个原因,我们SWT.VIRTUAL在我们的TableViewer. 除了选择之外,这很好用。

我们遇到以下问题:

  • 我们TableViewer支持排序和过滤。当我们使用虚拟表格查看器时,更改选择不会保留当前选中的项目,而是保留当前选中的行。这会导致另一个项目被选中。例如:如果用户选择了第 5 行的“A”项并执行排序,则在排序后第 5 行的“项”被选中,而不是“A”项。使用非 virtual TableViewer,一切正常。

我们尝试进行调试,发现AbstractTableViewer.VirtualManager类中的缓存似乎与模型是最新的。强制使用缓存AbstractTableViewer.virtualSetSelectionToWidget()可能是一种可能的方法。

我们已尝试实施https://bugs.eclipse.org/bugs/show_bug.cgi?id=338696中建议的解决方案。然而它没有用。

请提出一些建议或替代解决方法。

感谢您的回答。

0 投票
2 回答
2425 浏览

eclipse - 从 SWT / JFace TableViewer 仅刷新一列/单元格

我目前有一张大桌子(大约 1000 行)和大约 20 列。在 20 列中,我需要每 2-3 秒刷新一次(保存对象创建后经过的时间),我尝试过每 3 秒刷新一次整个表,但由于行数太多,这是一个很大的性能惩罚整个表刷新。

有人见过在 JFace tableviewer 中只刷新一个单元格/一列的方法吗?我需要一个经过时间的列刷新,就是这样。

任何帮助是极大的赞赏。

谢谢米尔恰

0 投票
1 回答
1218 浏览

java - JFace TableViewer 应该对更改列表做出反应

我们有以下场景:一个 Eclipse 4 RCP-Application 应该写一个日志输出。这些日志通过 OSGi 服务绑定,并应使用 JFace TableViewer 显示。

这适用于这个 ViewPart 的第一次启动。(因为已经有日志了)如果另一个插件在视图启动后写入日志,这个视图也应该更新。包含视图日志(作为模型的一部分)的 ArrayList 已正确更新。

该表是这样设置的:

数据绑定是这样进行的:

}

我们从列表中获取项目(已正确更新)并将它们放入 WritableList 中。此列表绑定到 TableViewer 并显示时间戳、消息和某种日志级别。

LogItemList 是这样设置的:

-MethodfirePropertyChange继承自ModelObject-class。

我认为 TableViewer/Databinding 会对这个更改事件做出反应,但事实并非如此。

有人对如何做到这一点有任何想法吗?

在此先感谢,史蒂芬

0 投票
2 回答
928 浏览

java - JFace ColumnWeigthData 导致父级增长

我有一个 Eclipse RCP 应用程序,想在as中TableViewer使用动态列大小。问题是每当我布局表格时,父表单(在示例代码中)都会增长几个像素。ColumnWeigthDataColumnLayoutDataScrolledForm

要重现,您可以运行该示例并打开/关闭该部分几次。每次关闭时,该部分都会变宽。

为什么它会这样做,我怎样才能让它停止?

感谢帮助。

0 投票
1 回答
858 浏览

java - 监听器来判断一个表中是否有一个元素

我正在使用 SWT/JFace 开发一个 Java 项目。我有一个Table正在使用TableViewer. 该表将永远只有 0 或 1 个项目(取决于它正在查看的数据......)。有没有办法听这张桌子,看看里面是否有项目。ISelectionChangedListener到目前为止,我一直在查看器上使用它,但它不能完美地工作,因为用户必须单击该项目来注册更改。理想情况下,每次将项目放入表中或从表中删除时都会触发侦听器。我环顾四周,但找不到我需要的东西。

外面有人知道我在找什么吗?

0 投票
1 回答
488 浏览

java - JFace TableViewer 侦听器取消选择先前选择的行

有谁知道如何在 TableViewer 中取消选择行,但是如果第二次单击该行(意味着如果我单击先前选择的行)?

默认情况下,第一次单击会标记此行!,但我希望第二次单击此标记的行将自动取消选择此行。