Javafx PropertyValueFactory füllt Tableview nicht

8
Das hat mich eine Weile verwirrt und ich kann es nicht begreifen. Ich verwende Cell Value Factory, um eine einfache Tabelle mit einer Spalte zu füllen, und sie füllt die Tabelle nicht auf.

Es funktioniert und ich klicke auf die Zeilen, die ausgefüllt sind, aber ich sehe keine Werte in ihnen - in diesem Fall String-Werte. [Ich habe das gerade bearbeitet, um es klarer zu machen]

Ich habe ein anderes Projekt, unter dem es unter dem gleichen Datenmodell arbeitet. Was mache ich falsch?

Hier ist der Code. Der kommentierte Code am Ende scheint jedoch zu funktionieren. Ich habe überprüft, ob die üblichen Fehler - Erstellen einer neuen Spalteninstanz oder einer neuen Tableview-Instanz - vorhanden sind. Nichts. Bitte helfen Sie!

// Einfaches Datenmodell Stock.java

%Vor%

// Controller-Klasse MainGuiController.java

%Vor%     
Nepze Tyson 11.06.2013, 02:03
quelle

2 Antworten

24

Wie man es repariert

Der Fall Ihrer Getter- und Setter-Methoden ist falsch.

getstockTicker sollte getStockTicker

sein

setstockTicker sollte setStockTicker

sein

Einige Hintergrundinformationen

Ihre PropertyValueFactory bleibt identisch mit:

%Vor%

Die Namenskonvention wird offensichtlich, wenn Sie Ihrer Stock-Klasse auch einen Eigenschaftenaccessor hinzufügen:

%Vor%

Die PropertyValueFactory verwendet Reflektion, um die relevanten Accessoren zu finden. Zuerst wird versucht, den stockTickerProperty-Accessor zu verwenden, und falls dies nicht der Fall ist, wird auf Getter und Setter zurückgegriffen. Es wird empfohlen, einen Eigenschaftenaccessor bereitzustellen, da Sie dann automatisch Ihre Tabelle aktivieren, um die Eigenschaft im zugrunde liegenden Modell zu beobachten und dynamisch ihre Daten zu aktualisieren, wenn sich das zugrunde liegende Modell ändert.

    
jewelsea 11.06.2013, 05:35
quelle
0

Setzen Sie die Getter- und Setter-Methode in Ihre Datenklasse für alle Elemente.

    
swaran sovan mandal 29.12.2016 18:00
quelle

Tags und Links