Editing and Refreshing
Die Bearbeitung von Daten innerhalb der Table erfolgt über die Interaktion mit dem Repository, das die Daten für die Table enthält. Das Repository dient als Verbindung zwischen der Table und dem zugrunde liegenden Datensatz und bietet Methoden zum Abrufen, Ändern und Aktualisieren von Daten. Unten finden Sie ein Beispiel, das das Verhalten zur Bearbeitung des „Titels“ einer gewünschten Zeile implementiert.
Code anzeigen
- Java
Im obigen Beispiel erleichtert die Klasse TitleEditorComponent die Bearbeitung des „Titel“-Felds für einen ausgewählten MusicRecord. Die Komponente umfasst ein Eingabefeld für den neuen Titel sowie „Speichern“ und „Abbrechen“-Schaltflächen.
Um die Bearbeitungskomponente mit der Table zu verbinden, wird eine „Bearbeiten“-Schaltfläche zur Table über einen VoidElementRenderer hinzugefügt. Ein Klick auf diese Schaltfläche ruft die Methode edit() der TitleEditorComponent auf, die es den Benutzern ermöglicht, den „Titel“-Wert zu ändern.
Commit-Methode
Sobald der Benutzer den Titel ändert und auf die Schaltfläche „Speichern“ klickt, löst die TitleEditorComponent die Methode save() aus. Diese Methode aktualisiert den Titel des entsprechenden MusicRecord und dispatcht ein benutzerdefiniertes SaveEvent.
Die Echtzeitaktualisierung der Daten im Repository erfolgt über die Methode commit(). Diese Methode wird innerhalb des onSave-Ereignislisteners verwendet, um sicherzustellen, dass Änderungen, die über die Bearbeitungskomponente vorgenommen werden, im zugrunde liegenden Datensatz widergespiegelt werden.
Die Methode commit() wird aufgerufen, um alle interessierten Komponenten darüber zu informieren, dass die Daten geändert wurden. Die Table empfängt das RepositoryCommitEvent und aktualisiert sich basierend auf den neuen Daten.
Das Aufrufen der Methode commit() aktualisiert sowohl vorhandene Einträge als auch fügt alle neuen Einträge ein, die erstellt wurden.