14 Şubat 2018 Çarşamba

JavaFX TableColumn Sınıfı

Giriş
Şu satırı dahil ederiz.
import javafx.scene.control.TableColumn;
Elimizde şöyle bir XML olsun
<TableView fx:id="tableView">
  <columns>
    <TableColumn text="Description" fx:id="description" />    ...
  </columns>
</TableView>
Bu XML için kod olsun
@FXML // fx:id="tableView"
public TableView<Details> tableView;
@FXML // fx:id="description"
public TableColumn<Details, String> description;
setCellValueFactory metodu
Örnek
Şöyle yaparız.
description.setCellValueFactory(new 
  PropertyValueFactory<Details, String>("Description"));
Örnek
Elimizde şöyle bir kod olsun.
@FXML
private TableColumn<Foo, Double> col;
Şöyle yaparız. SimpleDoubleProperty tipinden alana değer atamak için kullanılır.
col.setCellFactory(TextFieldTableCell.forTableColumn(new DoubleStringConverter()));
Örnek
Şöyle yaparız. SimpleIntegerProperty tipinden alana değer atamak için kullanılır.
col.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));
Örnek
Şöyle yaparız. SimpleStringProperty tipinden alana değer atamak için kullanılır.
col.setCellFactory(TextFieldTableCell.forTableColumn());
setOnEditCommit metodu
Şöyle yaparız.
col.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<Productos, Double>>() {
  @Override
  public void handle(CellEditEvent<Productos, Double> event) {
    event.getTableView().getItems().get(event.getTablePosition().getRow())
      setFoo(event.getNewValue());
  }
});

Hiç yorum yok:

Yorum Gönder