0

私は、ユーザーが場所細胞を編集できるようにするテーブルを設計しています。つまり、ユーザーはテーブルセルをその場で編集できます。その行のいずれかのセルが更新または編集されている場合は、「編集」の画像を行の最初のセルに設定して、その行を「編集」としてマークしたいと思います。にを追加しましCellEditorListenerJTableが、セルデータが変更または変更されていないことをどのように知ることができますか?ユーザーがプログラム制御の編集を終えると、editingStopped()に移動しますが、ユーザーがデータを更新していないことをどのようにして知ることができますか?

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                        
}
}; 

セルからデータを更新せずにユーザーが戻ってきたときに、プログラム制御をeditingCanceled()に移行すると想定しています。他にアプローチはありますか?

4

2 に答える 2

2
于 2012-03-30T11:31:21.087 に答える
0

変更を開始する前に、JTable の基本状態を保存する (モデルを複製しますか?) 必要があります。そうすれば、セルが変更されるたびに、それを元の値と比較して、変更されたかどうかを確認できます

于 2012-03-30T11:24:32.713 に答える