2017-01-06 9 views
0

Ich habe eine TableView mit Tausenden von Zeilen. Jetzt möchte ich Zeilen am Anfang der aktuellen Tabelle, aber nicht am Ende hinzufügen. TableView behält seine Artikel in ObservableList. Die einzige Lösung, die ich sehe, besteht darin, eine neue Liste zu erstellen (mit neuen und alten Elementen), die aktuelle Tabelle zu löschen und der Tabelle eine neue Liste hinzuzufügen. Allerdings muss ich diese Operation ständig durchführen und von der Performance-Ansicht wird es ein Albtraum sein. Gibt es andere Lösungen?JavaFX: Zeilen am Anfang des TableView hinzufügen

Antwort

2

ObservableList erweitert List und daher können Sie alle Methoden verwenden List erklärt, wie List.add und List.addAll:

TableView<MyItem> tableView = ... 
List<MyItem> itemsToPrepend = ... 
MyItem itemToPrepend = ... 

tableView.getItems().addAll(0, itemsToPrepend); 
tableView.getItems().add(0, itemToPrepend); 
2

Die ObservableList ist eine Schnittstelle, die von List-Schnittstelle erweitert: ObservableList & & List

In List Interface haben Sie die Methode add(index, element) versuchen,zu verwenden;

+0

Danke, es funktioniert –