Heim >Java >javaLernprogramm >Wie zeige ich benutzerdefinierte Objekte mit Cell Factories in JavaFX an?

Wie zeige ich benutzerdefinierte Objekte mit Cell Factories in JavaFX an?

DDD
DDDOriginal
2024-10-25 06:17:301078Durchsuche

How to Display Custom Objects with Cell Factories in JavaFX?

Zellenfabriken für die Anzeige benutzerdefinierter Objekte in ListView

In Ihrer JavaFX-Anwendung verfügen Sie über eine ListView, die jeweils benutzerdefinierte Word-Objekte anzeigen muss enthält ein Wort und seine Definition. Allerdings zeigt die ListView derzeit die Word-Objekte selbst als Strings statt als WordStrings an.

Zellfabriken bieten eine Lösung für dieses Problem. Durch die Verwendung einer Zellfabrik können Sie festlegen, wie die ListView die erforderlichen Daten aus den Objekten extrahieren und in den Zellen anzeigen soll.

So implementieren Sie dies mithilfe einer Zellfabrik:

<code class="java">listViewOfWords.setCellFactory(param -> new ListCell<Word>() {
    @Override
    protected void updateItem(Word item, boolean empty) {
        super.updateItem(item, empty);

        if (empty || item == null || item.getWord() == null) {
            setText(null);
        } else {
            setText(item.getWord());
        }
    }
});</code>

In dieser Zellfabrik extrahiert die updateItem-Methode die Worteigenschaft aus dem Word-Objekt und legt sie als Text der Zelle fest.

Stellen Sie sicher, dass die Zellfabrik auf der ListView mit der setCellFactory-Methode und Ihrer ListView festgelegt ist zeigt nun die Wortzeichenfolgen der Word-Objekte korrekt an.

Das obige ist der detaillierte Inhalt vonWie zeige ich benutzerdefinierte Objekte mit Cell Factories in JavaFX an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn