vaadin - 将复选框添加到 Vaadin 网格

标签 vaadin vaadin-grid vaadin14

我在 Vaadin 14 中构建了一个网格,使用解析器从文件中提取,如下所示:

 Grid<String[]> grid = new Grid<>();
        
        try {
            List<String[]> entries = reader.readAll();
            
            // Assume the first row contains headers
            String[] headers = entries.get(0);
            
            for (int i = 0; i < headers.length-1; i++) {
                final int columnIndex = i;
                String header = headers[i];
                String humanReadableHeader = SharedUtil.camelCaseToHumanFriendly(header);
                grid.addColumn(str -> str[columnIndex]).setHeader(humanReadableHeader).setSortable(true).setWidth("100px");
                
            }
            
            grid.setItems(entries.subList(1, entries.size()));

我接下来要做的是向每一行添加一个 CheckBox,以返回相应行中数据的可视化。所以我的问题有两个方面:

  1. 是否已经存在通过单击一行中的任意位置来模拟此行为的函数?
  2. 如果不是,初始化网格以适应这种情况的最佳方法是什么?

最佳答案

只需添加一个组件列:

Grid<String[]> grid = new Grid<>();
  
try {
    List<String[]> entries = reader.readAll();
        
    // Assume the first row contains headers
    String[] headers = entries.get(0);
        
    for (int i = 0; i < headers.length-1; i++) {
       final int columnIndex = i;
       String header = headers[i];
       String humanReadableHeader = SharedUtil.camelCaseToHumanFriendly(header);
       grid.addColumn(str -> str[columnIndex]).setHeader(humanReadableHeader).setSortable(true).setWidth("100px");
    }
        
     // Here goes your checkbox column
     grid.addComponentColumn(item -> {
       // Create the checkbox 
     }).setHeader("<the header>");

    grid.setItems(entries.subList(1, entries.size()));

关于vaadin - 将复选框添加到 Vaadin 网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68075254/

相关文章:

java - Vaadin 14 应用程序中的背景图像无法加载

java - 瓦丁 8 网格 : hide/unhide selected row

java - 如何将(浏览器)自动完成功能与 Vaadin 10 TextField 一起使用

java - 瓦丁。多选网格在空时显示选中的复选框

java - 验证 vaadin 组合框自定义输入(仅限整数)

vaadin - 如何将点击监听器或上下文菜单添加到 Vaadin 的网格列标题

java - 有没有办法将 vaadin UI 类强制转换为从它继承的某个类?

java - 我如何知道瓦丁的 window 是否打开?

瓦丁 8 : How to display full-size picture in grid?

java - 如何手动填充表格/网格