- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对在 NatTable 单元格中使用图像有疑问。我的 ConfigLabelAccumulator 和配置如下所示
public class MyConfigLabelAccumulator implements IConfigLabelAccumulator {
@Override
public void accumulateConfigLabels(final LabelStack configLabels, final int columnPosition, final int rowPosition) {
if (((rowPosition + columnPosition) % 2) == 0) {
configLabels.addLabel("myLabel");
}
}
}
public class MyStyleConfiguration extends DefaultNatTableStyleConfiguration {
@Override
public void configureRegistry(final IConfigRegistry configRegistry) {
super.configureRegistry(configRegistry);
final Style style = new Style();
style.setAttributeValue(CellStyleAttributes.IMAGE, GUIHelper.getImage("plus"));
style.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, GUIHelper.COLOR_YELLOW);
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_STYLE, style, DisplayMode.NORMAL, "myLabel");
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_PAINTER, new CellPainterDecorator(new TextPainter(), CellEdgeEnum.RIGHT, new ImagePainter()), DisplayMode.NORMAL);
}
}
我是这样配置的
dataLayer.setConfigLabelAccumulator(new MyConfigLabelAccumulator());
...
natTable.addConfiguration(new MyStyleConfiguration());
...
natTable.configure();
表格看起来与预期一致。我看到黄色背景单元格和单元格中的“+”图像。但通话后
natTable.setTheme(new ModernNatTableThemeConfiguration());
我只看到黄色背景,没有图像。
UPD:我已经使用 IThemeExtension
解决了这个问题,但可能还有其他解决方案吗?
最佳答案
主题配置旨在覆盖现有样式。这还允许在运行时切换主题。
IThemeExtensions 是使用条件样式扩展现有主题的方法。当然,您也可以通过扩展现有主题来创建自己的主题,但这样您的自定义就无法与其他主题重复使用。
上面代码中的问题似乎是您正在一般注册画家,而不仅仅是为您的“myLabel”注册。这是故意的吗?因为这会覆盖默认的单元格绘制器配置,然后该配置又会被主题覆盖。如果它只应注册为“myLabel”设置,则主题不应产生效果。
关于java - 在 NatTable 单元格中显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34791483/
关于 stackoverflow 的第一个问题 ;-) 与 here 类似的问题, 只有我想滚动 NAT-Table以编程方式。我既不能显示选定的项目,也不能为滚动条本身设置值(通过 getHoriz
如何制作一个混合固定列和剩余列填充所有可用垂直空间的 Nebula NatTable,最重要的是,用户可以在哪里调整固定宽度列的大小? 视觉示例: +-------------------------
我有一个用于列标题的 VerticalTextPainter 和一个用于行标题的 TextPainter。 某些列/行有换行符,因此我想调整列宽和行高的大小以适应内容。这应该只在首次显示列/行时发生一
我有使用 VerticalTextPainter 的列标题。 如果我将 setCalculateByTextHeight 和 setCalculateByTextLength 设置为 true,则会调
我正在用 NatTable 替换 JFace TableViewer。在我使用 TableViewer 的实现中,我在单元格中有图像,并且我有 ILabelProvider 的实现,它知道如何在运行时
我想让 NatTable 的列动态扩展为 显示单元格中的整个值 完全填充父组合 看来我可以做其中之一,但不能两者都做。换句话说,如果我有一个很大的父 Composite,而 NatTable 只有几列
我想使用列百分比大小来强制表格采用父级的宽度。 当我默认隐藏列时,这不起作用,因为 setColumnPercentageSizing() 方法似乎没有排除隐藏列,也没有正确计算宽度。 有没有一种简单
我的列标题有一个 VerticalTextPainter。 我想将列标题高度设置为所有列高度的最大值。 如果我设置 setCalculateByTextHeight(true) 和 setCalcul
我已经和我的 NatTable 布局斗争了一段时间了...... 问题似乎在于它与 GridLayout 的 react 方式。 我能够使用FillLayout产生几乎令人满意的结果,此布局的唯一问题
我们刚刚开始实现 NatTable,我们对所看到的性能提升感到非常高兴。但是,我们在实现特定功能时遇到了困难。 我们想要的是在单元格内有可点击的文本,然后该文本将引用我们选择并进入 View 的表中的
我在应用程序中的几乎所有表中都使用 Nattable。现在,一位用户报告了有关 Nattable 中的选择的问题。 当我的应用程序加载数据时,会显示数据,当用户在数据加载后选择一个项目时,它将删除该选
以下 SSCCE: 创建一个 1x1 NatTable,并将标签“BUTTON”应用于单个包含细胞 添加一个可以运行的 ButtonCellPainter(单元格看起来像一个按钮) 尝试添加一个不起作
我需要为 nattable 中的某些列而不是所有列设置自定义样式。我无法设置这样的配置: natTable.addConfiguration(new DefaultNatTableStyleConfi
我已阅读以下文档:https://eclipse.org/nattable/documentation.php?page=styling 我很好奇是否有任何简单的方法可以使用单独的配置添加背景行颜色和
如何更改默认行选择颜色?我在下面的代码片段中看不到在哪里访问它: SelectionLayer selectionLayer = glazedListsGridLayer.getBodyLay
我是第一次使用 NatTable。我已经创建了一个带有排序、过滤功能的漂亮表……但现在我正在寻找一种方法来实现更改监听器,每次表中的数据发生更改时都会调用该更改监听器。另外, Activity 需要将
我正在查看 (509_SortHeaderLayer.java) 示例作为引用点。 我将自定义比较器直接添加到 SortedList 中,如下例所示。但是,当我单击调试器中的列时,我的自定义比较器永远
当我单击一行时,整行颜色会按预期发生变化。但是,鼠标所在的单元格会更改为与该行其余部分不同的颜色。我试图防止单元格更改为与行的其余部分不同的颜色。 我试图找出单元格选择颜色的设置位置以及如何删除它(让
我在 eclipse ViewPart 中使用 Nattable。我的 RCP 应用程序是这样的,每次打开 View 时,表可以根据我希望显示的数据模型(由不同的 POJO 表示)具有不同的列。简而言
我对在 NatTable 单元格中使用图像有疑问。我的 ConfigLabelAccumulator 和配置如下所示 public class MyConfigLabelAccumulator imp
我是一名优秀的程序员,十分优秀!