如何解决如何使用 .setTextAlign 对齐 vaadin flow Grid 中的列数据
我有一个网格,我想根据类类型对齐值,例如下面的非工作代码?有没有办法在 if 语句中包含 setTextAlign
?
Grid.Column<Record> firstNameColumn = grid
.addColumn(item -> {
String value = item.getColumnData(strSelectColumnNames[fc]);
return item == null ? "-" : value;
})
if(colClass.equalsIgnoreCase("java.lang.Double"))
{
.setTextAlign(ColumnTextAlign.END)
}
else
{
.setTextAlign(ColumnTextAlign.START)
}
.setWidth((colWidth-1)+"em")
.setHeader(strSelectColumnNames[fc]);
解决方法
我刚刚找到了答案:
.setTextAlign(colClass.equalsIgnoreCase("java.lang.Double") ? ColumnTextAlign.END :ColumnTextAlign.START)
,
另一种选择是在使用您保存的列引用完成其他配置后设置文本对齐:
if (colClass.equalsIgnoreCase("java.lang.Double")) {
firstNameColumn.setTextAlign(ColumnTextAlign.END);
} else {
firstNameColumn.setTextAlign(ColumnTextAlign.START);
}
您的代码失败,因为每个配置调用都返回列引用,因此您可以将多个调用排队,而无需保存对变量的引用。当您在中间添加 if
部分时,您破坏了该队列,而没有使用 ;
将其关闭,也没有将该列引用添加到中断后的调用中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。