首页 文章

JavaFX - 按名称获取TableView列

提问于
浏览
3

有没有办法按名称从TableView获取列?

当我需要获取列时,我必须通过索引获取它:

tableView.getColumns().get(i);

但我想按名称获取专栏:

tableView.getColumns().get("Column Name");

2 回答

  • 8

    很难想象你不能只保留对列的引用,但你总是可以写一个类似的方法

    private <T> TableColumn<T, ?> getTableColumnByName(TableView<T> tableView, String name) {
        for (TableColumn<T, ?> col : tableView.getColumns())
            if (col.getText().equals(name)) return col ;
        return null ;
    }
    
  • 1

    获取列名称或 Headers 的另一种方法是为列设置ID并在必要时检索它:

    private String col_ID = "Customer";
      private TableColumn col = new TableColumn (col_ID);
      col.setId(col_ID);
    
      System.out.println(col.getId());
    

相关问题