2014-01-28 4 views
1

Как связать с моделью enter image description here выбора TableView с флажком IsSelected в таблице view.In вручную (с помощью мыши множественного выбора) выберите пункт в Tableviewфлажками связываются с TableView

ObservableList<T> observableList = tableView.getSelectionModel().getSelectedItems(); 
System.out.println(observableList); 

как связать флажок с Tableview

box.selectedProperty().addListener(new ChangeListener<Boolean>() { 
          @Override 
          public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 
           if (t1) { 
            Object object = getTableView().getItems().get(getTableRow().getIndex()); 
            objects.add(object); 
            getTableView().getItems().set(getTableRow().getIndex(), object); 
            tableView.getSelectionModel().getSelectedItem();         //tableView.getSelectionModel().setSelectedIndex(getTableRow().getIndex()); 

           } else { 
            Object object = getTableView().getItems().get(getTableRow().getIndex()); 
            objects.remove(object); 
           } 
           System.out.println(objects); 
          } 
         }); 

, если установлен флажок в строке, что пункт строки связываются с getSelectionModel().getSelectedItems() или как установить вручную setSelectedItems в Tableview

ответ

1

Добавить в этой линии в box.selectedProperty().addListener()

tableView.getSelectionModel().select(getTableRow().getIndex());

box.selectedProperty().addListener(new ChangeListener<Boolean>() { 
    @Override 
    public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 
     if (t1) { 
      tableView.getSelectionModel().select(getTableRow().getIndex()); 

     } else { 
      tableView.getSelectionModel().clearSelection(getTableRow().getIndex()); 
     } 
    } 
}); 
Смежные вопросы