DB からのデータを に格納するために使用されるさまざまなオブジェクトがありますArrayList<T>
。それぞれのレコードをテーブルに表示する必要がありました。私AbstractTableModel
は作業中の最初のオブジェクトに使用します。AbstractTableModel
クラスにはArrayList<Relation>
およびのString[]
ヘッダーがあります。
AbstractTableModel
私の質問は次のとおりです。すべてのオブジェクトに使用できる同じものを作成するにはどうすればよいですか。つまり、Relation を使用する場合は を使用できArrayList<Relation>
、Product を使用する場合はArrayList<Product>
.. を使用できます。私によると、それぞれに異なるものを書くことAbstrastTableModel
は良い考えではありません。主な問題はsetValueAt
、、、....getValue
addRow
@Override
public void setValueAt(Object value, int row, int col) {
Relation r = data.get(row); // ArrayList<Relation> data
switch (col) {
case 0:
r.setId(value.toString());
break;
case 1: r.setName(value.toString());
break;
case 2: r.setStartBalance((Double)value);
break;
case 3: r.setCurrentBalance((Double)value);
break;
}
}
すべての人に役立つ単一のモデルとして、これに取り組むことをお勧めします。また、ここからテーブルのイベントを発生させることもできます。
私はそれが少し複雑であることを知っています。しかし、構造は広大でAbstractTableModel
ありJTable
、各オブジェクトの新しいクラスを作成することもお勧めできません。
何を指示してるんですか ?