微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 .setTextAlign 对齐 vaadin flow Grid 中的列数据

如何解决如何使用 .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 举报,一经查实,本站将立刻删除。