package testtableview; import javafx.application.Application;import javafx.collections.FXCollections;import javafx.collections.ObservableList;import javafx.geometry.Insets;import javafx.scene.Scene;import javafx.scene.control.*;import javafx.scene.control.cell.PropertyValueFactory;import javafx.scene.layout.StackPane;import javafx.stage.Stage; public class TableViewMain extends Application { @Override public void start(Stage primaryStage) { TableView<AClass> table = new TableView<AClass>(); TableColumn<AClass, String> idCol = new TableColumn<AClass, String>("ID"); TableColumn<AClass, ComboBox> optionCol = new TableColumn<AClass, ComboBox>("OPTION"); TableColumn<AClass, Object> valuesCol = new TableColumn<AClass, Object>("VALUES"); table.setEditable(true); // idCol.setCellValueFactory(new PropertyValueFactory<>("id")); optionCol.setCellValueFactory(new PropertyValueFactory<>("comboBox")); valuesCol.setCellValueFactory(new PropertyValueFactory<>("object")); table.setItems(initLoad()); table.getColumns().addAll(idCol,optionCol, valuesCol); StackPane root = new StackPane(); root.setPadding(new Insets(5)); root.getChildren().add(table); primaryStage.setTitle("TableView (o7planning.org)"); Scene scene = new Scene(root, 450, 300); primaryStage.setScene(scene); primaryStage.show(); } public ObservableList<AClass> initLoad(){ ObservableList<AClass> dataTable = FXCollections.observableArrayList(); for(int i = 0; i< 7 ; i++){ ObservableList<String> listItem = FXCollections.observableArrayList("a","b","c"); ComboBox<String> comboBox = new ComboBox<String>(); comboBox.setItems(listItem); comboBox.getSelectionModel().select(0); dataTable.add(new AClass(""+i,comboBox,"a")); } return dataTable; } public static void main(String[] args) { launch(args); } }




0 comments:
Post a Comment