2011-01-31 11 views
1

私は最初のJava/Swingアプリケーションを開発しており、JTableに関するいくつかの助けが必要です。ユーザーがセルを変更してユーザーだけを変更したときのJTable追跡

私が抱えている問題は、ユーザーがJTableを編集してアプリケーションを編集したときに追跡したいという問題です。私は、次のでした。今の問題は、私は例えば、私は新しいテーブルをロードし、私がロードされたファイルが15行、私は希望を持っていた、私のプログラムは、表に変更をしたときに、これは発射したくない

//Made my table then did the following line: 

table.getModel().addTableModelListener(this); 

//Have a listener set up: 

public void tableChanged(TableModelEvent e) { 
    // TODO Auto-generated method stub 
     System.out.println(e); 
} 

15種類のイベントが発生します。私は、USERがセルを編集したときにも発砲したいだけです。

何か助けていただければ幸いです。前もって感謝します。

+1

なぜ、テーブルが作成された後に 'TableModelListener'を追加しないのですか? – trashgod

+0

テーブルには、いつでも新しい行、行の削除、またはユーザーが新しいファイルを読み込んで、自分のアプリケーションの解決策にならないように設定できます。 – user597608

+1

したがって、ユーザーアクション(テーブル全体を更新する)の前にTMLを削除し、終了後にもう一度追加するか、プログラムで変更が行われていることを示すフラグをコードに設定します。 –

答えて

0

Andrewのコメントには、このような状況を処理する最も一般的な方法がいくつかあります。あなたのモデルがどのように構築/保存されているかによって、また変更の際に正確に何をしたいのかによって、モデルが変更された場合や、setValueAtメソッドの下で可能な場合があります。

関連する問題