Vaadin Crud 用户界面。轴未正确排序
Posted
技术标签:
【中文标题】Vaadin Crud 用户界面。轴未正确排序【英文标题】:Vaadin Crud UI. Axes are not sorted correctly 【发布时间】:2022-01-11 17:04:36 【问题描述】:为什么我的斧头是这样的?我怎样才能正确地对它们进行排序。 我正在使用 Vaadin Crud 组件(不是 Grid)。
Crud<OpvUser> crud = new Crud<>(OpvUser.class, createUserEditor());
crud.getGrid().addItemDoubleClickListener(e -> crud.edit(e.getItem(), Crud.EditMode.EXISTING_ITEM));
UserDataProvider dataProvider = new UserDataProvider();
crud.setDataProvider(dataProvider);
dataProvider.refreshAll();
.....
crud.getGrid().setSortableColumns();
crud.getGrid().removeColumnByKey("password");
crud.addThemeVariants(CrudVariant.NO_BORDER);
add(crud);
【问题讨论】:
你的意思是“Liste von Benutzern”还是什么? 【参考方案1】:我假设您想要更改列的顺序,因为这是从您发布的图片中脱颖而出的一件事。
Crud 组件在内部构建一个 Grid,列自动从您传递给构造函数的 bean 类中存在的属性生成(在您的情况下为OpvUser
)。根据 bean 类中属性的定义方式,列的顺序可能不合适。如果要更改列的顺序,可以在网格上调用setColumnOrder
。对于您的示例,应该如下所示:
Grid<OpvUser> grid = crud.getGrid();
grid.setColumnOrder(
// Columns keys are the exact property names of the bean class
grid.getColumnByKey("id"),
grid.getColumnByKey("firstName"),
grid.getColumnByKey("lastName"),
grid.getColumnByKey("email")
);
完整示例请参见Crud docs,以及Grid API docs
【讨论】:
萨沙,谢谢你帮助我。我以前试过这个,但它不起作用,我得到 NullPointer 或者什么也没发生。我认为问题出在 DataProvider 类中,特别是在 ComparatorsetColumns
调用删除了编辑列。请查看此示例以了解如何在 CRUD 中设置列:github.com/vaadin/docs/blob/latest/src/main/java/com/vaadin/…以上是关于Vaadin Crud 用户界面。轴未正确排序的主要内容,如果未能解决你的问题,请参考以下文章
IOS 图表 Y 轴未正确对齐 - 图表 Cocoa Pod