问题标签 [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.
data-binding - 如何在 Eclipse RCP 中将 TableViewer 绑定到 java.util.List
我正在尝试将 TableViewer 绑定到
,但我并没有真正掌握它。应该可以通过主详细信息和数据绑定上下文 (DataBindingContext) 进行绑定,以便我能够仅在请求时将列表(及其元素)的更改写入模型(dbc 设置为 POLICY_ON_REQUEST),即在编辑器的保存动作中。使用简单的文本字段,这就像一个魅力,但我找不到任何类似的 TableViewers 示例。当我查看 ViewerSupport 实例的 API 时,我只能绑定它,但没有提供 DBC 或主详细信息的选项。这有效:
但如前所述,它不允许使用 dbc 或主详细信息。
有没有解决方案,或者 TableViewer 只是不支持我打算使用的数据绑定?是否有解决方法或我错过了一些 API?
谢谢提前回答!
java - 让 JFace TableViewer 用它周围的复合材料调整大小?
使用 WindowBuilder for Eclipse,我创建了一个TableViewer
放在复合材料中的文件。(TableViewer
创建一个 SWT Table
,其中TableViewer
插入自身)。
我试图通过设置grabExcessHorizontalSpace
和grabVerticalSpace
为真使复合材料可调整大小,但是如何制作表格并TableViewer
填充复合材料?
java - 如何使用 setSelection 在 swt 表上设置选择并将显示设置为 false?
我正在尝试在我的表中选择一些项目,但我不希望它们被泄露。问题是调用该方法(见下文)会自动导致在showSelected()
内部被调用Table.class
,这不是我想要的。
我尝试使用 tableViewer 设置选择,但由于某种原因它不起作用例如:tableViewer.setSelection(new StructuredSelection (lastSelectedIndices), false);
这行代码不会导致任何内容被选择。
无论如何我可以去选择表格行而不是让它们被显示出来吗?setSelection
在我的系统中,每次网格刷新后我都需要调用,这样用户就不会丢失他选择的项目。当用户向下滚动网格时会出现问题 --> 如果此时发生刷新,则网格会跳回到所选项目所在的位置。当用户向下滚动表格并且滚动条突然跳到顶部时,这看起来真的很奇怪。
任何帮助是极大的赞赏!
--建表代码--
---刷新表格的代码--
jface - JFace adapt TableViewerColumn
I would like to compute the width for each TableViewerColumn so that it fits the content best. Is there any "best practice" way of doing this?
sorting - swt table 关闭列标题中的排序箭头
我有以下代码,它允许我的表中的列按升序或降序排序。
唯一的问题是,当用户单击列标题进行排序时,箭头会导致列名点出来(例如:Ccy..^)而不是(CCy1 Amount)。有没有办法关闭箭头的显示?我宁愿不必费心调整我的网格列的大小来适应箭头,这样点就不会形成..
关于如何做到这一点的任何想法?
java - JFace 为 SWT 添加了什么?
以下有什么区别:
- 树浏览器和树
- 表格查看器和表格
- TreeViewerColumn & TreeColumn
- TableViewerColumn & TableColumn
何时使用查看器和常规小部件?
PS:如果您能帮助我找到理解它们的好资源,那将是非常有帮助的。在此先感谢!
swt - SWT 表:如何使列尽可能宽
使用 Swing 这很容易:遍历列中的所有行并搜索最宽的条目。SWT(或 Windows?)支持双击表格列之间的分隔符,但如何以编程方式使用 SWT 做到这一点?
eclipse - JFace TableViewer 单元格中的小部件?
我正在使用 Eclipse 3.6 上的 JFace 开发一个应用程序,我希望在 TableViewer 中有实际的小部件——主要是复选框和按钮。我发现的一切似乎都表明目前这是不可能的。
我当前的解决方法包括为包装的 Table 控件设置一个 MouseListener,其中 mouseDown 事件坐标使用getCell()方法转换为单元格并执行操作。然后,我使用内容提供程序来提供图像和格式化文本,它们在某种程度上接近相应小部件的外观。
问题是结果根本不是原生的。有一些解决方法涉及对实际的本机小部件进行屏幕截图,但这有一些问题:
- 这是一个黑客
- 捕获的小部件偶尔会变得可见,从而在屏幕上创建闪烁的伪影
- 它需要图像处理技巧来使捕获的图像与表格颜色混合
- 当需要不同内容的按钮时,它不能很好地缩放
有没有办法在不使用这种繁琐方法的情况下将小部件嵌入 TableViewer 单元格中?底层的 SWT Table 当然可以做到这一点,但是 TableViewer 接口似乎不支持这个......
java - Windows 7 中的 SWT JFace TableViewer 选择
我正在使用 SWT JFaceTableViewer
组件来显示数据列表。我已经实现了IColorProvider
提供自定义的前景色和背景色。在大多数情况下,我提供带有浅色背景的黑色前景文本。但是,在某些情况下,我使用带有白色前景文本的深色背景颜色。这会导致 Windows 7 出现问题,即选择颜色为淡蓝色。
Windows 7 上发生的情况是,当我的表中的深色项目(行选择)被选择时,背景颜色是淡蓝色选择颜色。但是,前景色仍然是白色,您看不到它(请参阅下面的图 1)。
图 1:JFace SWT TableViewer - 在 Windows 7 中选择的行
首先,我在这里做错了吗?
其次,我尝试了以下方法来解决这个问题(关于 HOT 事件绘画的任何想法?):
/li>
当我重新运行我的测试应用程序时,我得到以下信息。选定的行现在已修复,但“悬停”的表行仍然存在问题,如图 2 所示。我试图在 EraseItem 处理程序中捕获 SWT.HOT 事件,但似乎没有做任何事。
图 2:JFace SWT TableViewer - 添加了 EraseItem 事件处理程序
我确实很幸运地添加了 PaintItem 事件处理程序(如下所示),但我必须在此代码中放置与单元格对齐相同的逻辑才能正确呈现。此外,我的绘画事件会触发并在正确渲染的 SELECTED Windows 7 颜色修复上绘画。
总之,也许我做错了什么IColourProvider
,就这么简单?Table
或者,或TableViewer
组件中存在错误。我已经通过下载 RCP 3.6.1 升级到最新版本,但我有同样的症状。
一些帮助将不胜感激:-)
image - 带有图像的表格查看器中的奇怪对齐和布局
我使用TableViewer
带有两列的 a 。第一个应包含文本,第二个应包含图像,具体取决于对象的状态。标签提供者是一个自定义提供者,它扩展LabelProvider
和实现了ITableLayoutProvider
.
不显示图片时,布局正确,第一列文字左对齐。
但是,当至少显示一个图像时,第一列中的文本在右侧和中心之间的某个位置对齐 - 看起来有点难看。
布局非常简单:
是什么导致了这个问题?