mem*_*und 3 java vaadin vaadin7
我有一个vaadin Table,想对准具有数字类类型的所有列(例如BigDecimal,Integer,Double在右边.
可以使用以下表格为每个表列ID设置对齐:
table.setColumnAlignment("username", Align.RIGHT);
但我更喜欢设置每个类型的对齐方式.那可能吗?
您可以覆盖该setVisibleColumns方法:
new Table() {
@Override
public void setVisibleColumns(Object... visibleColumns) {
super.setVisibleColumns(visibleColumns);
for (Object propertyId : visibleColumns) {
setPropertyAlignment(propertyId);
}
}
private void setPropertyAlignment(Object propertyId) {
Class<?> clazzProperty = getContainerDataSource().getType(propertyId);
if (clazzProperty.isAssignableFrom(Number.class)) {
super.setColumnAlignment(propertyId, Align.RIGHT);
}
else {
super.setColumnAlignment(propertyId, Align.LEFT);
}
}
}
Run Code Online (Sandbox Code Playgroud)