私の質問が何度か出されたのを見てきましたが、期待した答えを見たことがありません。データベースの要素を JTable に入力しましたが、いくつかの JButton を介して要素を削除/追加できるようにしたいと考えています。問題は、追加/削除すると、変更がデータベースには表示されますが、JTable には表示されないことです。プログラムを停止して再度実行すると、JTable が更新されます。行を変更した直後にテーブルを更新するにはどうすればよいですか? 私はやろうとしましthis.table.repaint()
たが、うまくいきませんでした。おそらくテーブルモデルで何かをしなければならないと思いますが、fireTableStructureChanged();
使用方法がよくわかりません。お時間をいただきありがとうございます。
これは、JTable のコントローラー クラスのコードの一部です。役に立たないと思います。
public void update(Observable o, Object message) {
Integer iMessage = (Integer) message;
if (iMessage == Cours.CHANGEMENT_ELEVES) {
int sizeEl = this.modele.getAllEleves().size();
if (this.modele.getAllEleves() !=null) {
Vector<String[]> data = this.modele.getAllEleves();
for (int i=0; i<sizeEl; i++) {
this.table.setValueAt(data.get(i)[0],i, 0);
this.table.setValueAt(data.get(i)[1],i,1);
this.table.setValueAt(data.get(i)[2],i,2);
}
this.table.repaint();
}
}
}