JavaFx Editierbare ComboBox: Zeigt bei der Elementauswahl toString an

9

Ich habe ein ComboBox<Perosn> vom Typ Person , in dem ich einige Objekte von Person class hinzugefügt habe,

Ich habe die Methode setCellFactory(Callback) verwendet, um den Personennamen in ComboBox Drop-down

anzuzeigen %Vor%

Und, setButtonCell(ListCell) Methode, um den Namen in combobox bei Auswahl anzuzeigen.

%Vor%

Das funktioniert im Normalfall einwandfrei, aber wenn ich eine bearbeitbare Combobox benutze, scheitert das.

Wenn ich schreibe, combobox.setEditable(true); , dann zeigt das Textfeld (Editor) der Combobox bei der Elementauswahl toString() Methode der Personenklasse an.

Normaler Fall:  

Editierbarer Fall:  

Gibt es dafür eine Lösung?

Ich habe eine Modellklasse,

%Vor%     
Shreyas Dave 08.10.2013, 08:30
quelle

2 Antworten

11

Hier ist eine Antwort auf meine eigene Frage, die ich nach vielen Bemühungen und Korrekturen am besten fand.

%Vor%

Und mit der erforderlichen Funktion von getStringField(Object) ,

%Vor%     
Shreyas Dave 09.12.2013, 12:05
quelle
16

Sie müssen zu diesem Zweck ein StringConverter auf der ComboBox setzen (es gibt keine andere Möglichkeit, den Quellcode der ComboBox zu betrachten)

Hier ist ein Beispiel:

%Vor%

Ergebnis:

    
Sebastian 08.10.2013 09:33
quelle

Tags und Links