Java 在单击CellPainterRapper而不是TextPainter for columns时才显示表
我想在列标题中添加动态图标。为此,我创建了一个扩展了Java 在单击CellPainterRapper而不是TextPainter for columns时才显示表,java,nattable,Java,Nattable,我想在列标题中添加动态图标。为此,我创建了一个扩展了CellPainterRapper的类,并添加了一个CellPainterDecorator,其中TextPainter作为基础绘制者,我的动态图标绘制者作为装饰绘制者 如果我随后交换配置中的CELL\u PAINTER以使用我的类,而不是textpainer,则表不会显示。如果我点击一行的位置,它就会按预期调整大小并显示表格,并显示列标题文本和图标。 我还尝试使用了SortableHeaderTextPainter,并出现了相同的问题 con
CellPainterRapper
的类,并添加了一个CellPainterDecorator
,其中TextPainter
作为基础绘制者,我的动态图标绘制者作为装饰绘制者
如果我随后交换配置中的CELL\u PAINTER
以使用我的类,而不是textpainer
,则表不会显示。如果我点击一行的位置,它就会按预期调整大小并显示表格,并显示列标题文本和图标。
我还尝试使用了SortableHeaderTextPainter
,并出现了相同的问题
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_PAINTER, new SortableHeaderTextPainter(),
DisplayMode.NORMAL, GridRegion.COLUMN_HEADER);
总的来说,这意味着textpainer
和sortableheadertextpainer
的实现方式有所不同。特别是,我可以在textpainer
中看到一些部分,它们将调用命令来调整层的大小,但我很难弄清楚应该如何做到这一点
设置初始列/行大小需要添加哪些内容 通过
DataLayer
设置初始宽度和高度,或配置textpainer
来计算尺寸。通过setter或构造函数参数 通过DataLayer
设置初始宽度和高度,或配置textpainer
来计算尺寸。通过setter或构造函数参数 这是由于任何一位画家将paintBg
设置为true,以及我的风格没有指定背景色。不会抛出异常,但会导致我的表不会自动调整大小
要解决这个问题,我可以为我的所有画家将
paintBg
设置为false,或者在样式中设置背景色 这是由于任何一位画家将paintBg
设置为true,以及我的风格没有指定背景色。不会抛出异常,但会导致我的表不会自动调整大小
要解决这个问题,我可以为我的所有画家将
paintBg
设置为false,或者在样式中设置背景色 我尝试将calculate
设置为true
,结果与new sortableheadertextpainer(new textpainer(false,true,true))相同
如果没有关于您的组成和配置的更多信息,我将无能为力。我已尝试将计算设置为真
,结果与新建SortableHeaderTextPainter(新建TextPainter(假、真、真))相同
如果没有关于您的组成和配置的更多信息,我将无能为力。因此,这意味着您尚未配置包含基本必要样式配置的DefaultNatTableStyleConfiguration
。正确吗?我没有使用DefaultNatTableStyleConfiguration
,因为我使用的是取决于图层的自定义样式。然后我通过创建一个新样式并将其添加为单元格样式来覆盖任何现有样式。是否更建议使用默认配置,而不是创建新样式,获取现有样式配置属性并更改其中的值?如果您想在每个层中完全使用自定义样式,我建议通过扩展默认设置并交换值来创建自定义主题配置。这样,您就可以在一个地方进行样式配置,甚至可以在运行时轻松地进行交换。这是一个好主意。谢谢你的帮助!此示例应该有助于了解NatTableThemeSeconfiguration
s:因此,这意味着您尚未配置包含基本必要样式配置的DefaultNatTableStyleConfiguration
。正确吗?我没有使用DefaultNatTableStyleConfiguration
,因为我使用的是取决于图层的自定义样式。然后我通过创建一个新样式并将其添加为单元格样式来覆盖任何现有样式。是否更建议使用默认配置,而不是创建新样式,获取现有样式配置属性并更改其中的值?如果您想在每个层中完全使用自定义样式,我建议通过扩展默认设置并交换值来创建自定义主题配置。这样,您就可以在一个地方进行样式配置,甚至可以在运行时轻松地进行交换。这是一个好主意。谢谢你的帮助!此示例应有助于了解NatTable的配置: