zoukankan      html  css  js  c++  java
  • javafx之TableView的TableColumn

    TableColumn列 

    列与Bean之间建立联系: 
    setCellValueFactory();
    通过cell值工厂建立与Bean的联系。它这里并不需要知道你是传了什么Bean,它只需要通过“字段名”反射去Bean里面获得值,所以Bean属性定义的名字不需要与它相同,只需要有字段名Property() 方法。 

    setCellValueFactory(new PropertyValueFactory<Person, String>("字段名"));

     

    [java] view plain copy
     
    1. TableColumn<Person,String> firstNameCol = new TableColumn<Person,String>("First Name");  
    2. firstNameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("firstName"));  


    第二种设置方式

    setCellValueFactory(new CallBack<T,S>());

    [java] view plain copy
     
    1. setCellValueFactory(new CallBack<TableColumn.CellDataFeatures<Person, String>,ObservableValue<String>>()  
    2. @Override  
    3.             public ObservableValue<String> call(TableColumn.CellDataFeatures<Person, String> cellData) {  
    4.                  
    5.                 return new SimpleStringProperty(cellData.getValue().);  
    6.             }  
    7. );  

     


    TableColumn设置sort的3个方法 

    setSortNode(Node); // 默认是表头上的小图标三角形,可以改变 
    setSortable(true); // 设置可排序 

    setSortType(SortType);//设置升降序 SortType.DESCENDINGSortType.ASCENDING



    table.getSelectionModel().getSelectedCells().get(0).getTableColumn() // 获取选中的TableColumn
    column中包含多个column,则可以调用TableColumn的getColumns().setAll(TableColumn...)

     

    TableColumn<Person, String> firstNameColumn = new TableColumn<Person, String>("First");  
    firstNameColumn.setCellValueFactory(new PropertyValueFactory<Person, String>("firstName"));  
    // firstNameColumn.setCellFactory(TextFieldCellFactory.<Person>forTableColumn());  
    TableColumn<Person, String> lastNameColumn = new TableColumn<Person, String>("Last");  
    lastNameColumn.setCellValueFactory(new PropertyValueFactory<Person, String>("lastName"));  
    // lastNameColumn.setCellFactory(TextFieldCellFactory.<Person>forTableColumn());  
    TableColumn<Person, String> nameColumn = new TableColumn<Person, String>("Name");  
    nameColumn.getColumns().setAll(firstNameColumn, lastNameColumn);  
    


  • 相关阅读:
    springboot下使用多线程
    springboot 下测试 service中的方法
    maven 将本地jar包 安装到本地仓库
    idea下http响应乱码
    使用vue-element-admin框架时如何添加多级目录
    如何在uniapp中使用mqtt
    在uniapp设计的APP中引入axios,支持cookie(真机亲测可行)
    vue中get方法如何传递数组参数
    Vue跨域访问,axios&cors
    Vue页面间传值,客户端数据存储,以及父子组件间props传值
  • 原文地址:https://www.cnblogs.com/maokun/p/6710833.html
Copyright © 2011-2022 走看看