JavaFX TableView mit Array Inhalt füllen

izoards

Bekanntes Mitglied
Hi Java Community,

Ich kämpfe gerade mit der JavaFX TableView. Und zwar möchte ich einfach den Inhalt eines Array's in der Tabelle anzeigen lassen.

Ich habe eine Klasse, welche die Daten hält:

Java:
public class Measurement {

    private String attribut1;
    private String attribut2;
    private String[] measurements;



/*
    public Measurement(String attribut1, String attribut2, String[] measurements) {
        this.attribut1 = attribut1;
        this.attribut2 = attribut2;
        this.measurements = measurements;
    }
*/
    public String getAttribut1() {
        return attribut1;
    }

    public void setAttribut1(String attribut1) {
        this.attribut1 = attribut1;
    }

    public String getAttribut2() {
        return attribut2;
    }

    public void setAttribut2(String attribut2) {
        this.attribut2 = attribut2;
    }

    public String[] getMeasurements() {
        return measurements;
    }

    public void setMeasurements(String[] measurements) {
        this.measurements = measurements;
    }


}


In meiner Controller Klasse versuche ich nun die daten des "measurements" Array in der Tabelle anzuzeigen.

Java:
 @FXML
    private TableView<String> tableView;
    @FXML
    private JFXButton cancelButton;
    @FXML
    private TableColumn column1;
    @FXML
    private TableColumn column2;





    private ObservableList<String> data = FXCollections.observableArrayList();

    //private static final String COLUMN1 =  "xxx";
    private static final String COLUMN2 =  "Messwert";
 

    @Override
    public void initialize(final URL url, final ResourceBundle rb) {


        Measurement values = new Measurement();
        String messwerte[] = {"2.22", "3.23", "23.23"};
        values.setMeasurements(messwerte);


 
        column1.setCellValueFactory(new PropertyValueFactory<>(""));
        column2.setCellValueFactory(new PropertyValueFactory<>("values"));


        for (int i=0; i< messwerte.length; i++) {
            data.add(messwerte[i]);
            System.out.println(messwerte[i]);

        }


        tableView.setItems(data);
        tableView.refresh();
    }


Leider klappt das so nicht. Bei einem anderen Projekt konnte ich die Daten, welche in der Tabelle angezeigt werden sollten mit einer SimpleStringProperty "verbinden"

Gibt es so was auch für ein Array aus Strings?

Bin froh um jede Hilfe...
Besten Dank schon im Voraus..
 
Habs hingekriegt...

"setCellValueFactory" muss mit einer SimpleStringProperty Variable "verknüpft" werden.

Das Array schleife ich danach durch und weise es der SimpleStringProperty variable zu und füge diese in der Schleife der ObservableList dazu...

Hoffe das ist in etwa so, wie es auch gemacht wird....
 

Neue Themen


Zurück
Oben