Elemente aus Array zu TableView JavaFX übertragen

Tintenfisch

Bekanntes Mitglied
Hallo,
folgendes Problem: Ich habe mit JavaFX eine TableView erstellt, welche mit Elementen aus einem Array aus einer separaten Klasse befüllt werden soll.

[CODE lang="java" title="Aus Main class"]public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
VBox root = new VBox();

TableView<Persons> personTable = new TableView<>();
personTable.setEditable(true);

TableColumn<Persons, Integer> numberColumn = new TableColumn<>("number");
numberColumn.setCellValueFactory(new PropertyValueFactory<>("number"));
numberColumn.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));

TableColumn<Persons, String> nameColumn = new TableColumn<>("name");
nameColumn.setCellValueFactory(new PropertyValueFactory<>("name"));
nameColumn.setCellFactory(TextFieldTableCell.forTableColumn());

TableColumn<Persons, Integer> ageColumn = new TableColumn<>("age");
ageColumn.setCellValueFactory(new PropertyValueFactory<>("age"));

personTable.getColumns().addAll(numberColumn, nameColumn, ageColumn);
personTable.setItems(getPersons());
personTable.setTableMenuButtonVisible(true);
root.getChildren().add(personTable);

Scene scene = new Scene(root,400,400);
scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
public ObservableList <Persons> getPersons() {
ObservableList<Persons> personList = FXCollections.observableArrayList();
personList.add(new Persons(4, "Alf", 30));
personList.add(new Persons(2, "Bert", 25));
personList.add(new Persons(3, "Erni", 23));
return personList;
}
}[/CODE]

nun soll die Liste nicht wie in dem Beispiel in der letzten Methode befüllt werden, sondern mit variablen von Instanzen, wessen Elemente in einer separaten Klasse liegen. Genutzt werden soll ein Array.
Aus meiner Main Klasse, lässt sich das Array befüllen und auslesen, aber aus dem Teil von JavaFX, hatte ich noch keinerlei Erfolg.

Wäre cool, wenn da jemand weiterhelfen könnte, danke =)
 
Du kannst die personList als Instanzvariable anlegen. Und dann kannst Du da eine Methode addPersons bauen, die das Array mit Persons entgegen nimmt um dann alle in der personList hinzu zu fügen.
 
Bei der Methode bin ich hart am verzweifeln, bisher steht sie so da, aber irgendwie ..

Java:
    public String [] addYear (String [] year) {
        
        for (int i = 0; i > year.length; i ++) {
            
        }
        return year;
    }
 

Neue Themen


Zurück
Oben