zoukankan      html  css  js  c++  java
  • JavaFX之TableView的SelectionMode

    SelectionMode

    table默认是只能选着一行的,如果想选着多行,设置SelectionMode,此时可以对选中的多个进行监听。 

     

    [java] view plain copy
     
    1. ListChangeListener<Person> indicesListener = new   ListChangeListener<Person>() {    
    2.            @Override public void onChanged(Change<? extends Person> c) {    
    3.                while (c.next()) {    
    4.                     
    5.                    selectionUpdated(c.getAddedSubList(), c.getRemoved());    
    6.                }    
    7.            }    
    8.        };    
    9. tableView.getSelectionModel().getSelectedItems().addListener(indicesListener);    
    10. tableView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);    

     



    tableView.getSelectionModel()得到的是个抽象类SelectionModel,它有二个子类MultipleSelectionModel, SingleSelectionModel。

    getSelectedIndex()   
    getSelectedItem()   
    selectedIndexProperty()   
    selectedItemProperty()   
    selectFirst()   
    selectLast()   
    clearSelection()   
    clearSelection(int index) 
    selectIndices(int index, int... indices)   
    selectRange(int start, int end)   
    select(int index)   
    select(T obj)   
    setSelectionMode(SelectionMode.MULTIPLE);  


    MultipleSelectionModel则提供多选功能,并且提供多选的一些方法。 

    selectAboveCell()   
    selectBelowCell()  
    selectLeftCell()   
    selectRightCell()    
    setCellSelectionEnabled(boolean value)   
    select(int row, TableColumn<S,?> column)   



    选择变换监听

    [java] view plain copy
     
    1. tableview.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {    
    2. //tableview.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener() {    
    3.         @Override    
    4.         public void changed(ObservableValue observable,Object oldValue, Object newValue) {    
    5.         system.out.println("selection change");    
    6.         }    
    7. });    


  • 相关阅读:
    Java基础教程——模拟B/S结构的服务器
    Java基础教程——Socket编程
    Java基础教程——模拟浏览器发送请求
    Java基础教程——网络基础知识
    Java基础教程——线程通信
    Java基础教程——线程局部变量
    Java基础教程——线程同步
    Java基础教程——线程池
    Java基础教程——线程状态
    Java基础教程——多线程:创建线程
  • 原文地址:https://www.cnblogs.com/maokun/p/6710829.html
Copyright © 2011-2022 走看看