Ich entwerfe eine Tabelle, die Benutzern IN PLACE CELL BEARBEITEN ermöglicht, d. H. Benutzer kann Tabelle Cell in Place bearbeiten. Ich möchte die Zeile als "Edit" markieren, indem Sie das Bild von "EDIT" auf die erste Zelle der Zeile setzen, wenn eine Zelle dieser Zeile aktualisiert oder bearbeitet wurde. Ich habe eine CellEditorListener
zu der JTable
hinzugefügt, aber woher weiß ich, dass Zellendaten nicht geändert oder geändert worden sind? Wenn der Benutzer mit der Bearbeitung der Programmsteuerung fertig ist, bringt mich das zum editingStopped(), aber woher weiß ich, dass der Benutzer keine Daten aktualisiert hat?Woher weiß man, dass Zellendaten nicht geändert oder geändert wurden?
CellEditorListener cellEditorListener = new CellEditorListener() {
public void editingStopped(ChangeEvent e) {
//If cell has been edited
}
public void editingCanceled(ChangeEvent e) {
// If cell has not been updated
}
};
Ich gehe davon aus, dass ich meine Programmsteuerung zu editingCanceled erhalten wird(), wenn der Benutzer Rückkehr wurde, ohne dass Daten aus der Zelle zu aktualisieren. Gibt es einen anderen Ansatz?
A 'PropertyChangeEvent' kann in diesem Zusammenhang verwendet werden, wie in den Links von @mKorbel gezeigt. – trashgod