私のアプリケーションでは、すべてが配布されます。
- アクションで、アプリケーションはDBからデータを取得し、に保存し
ArrayList<T>
ます。 RelativeTableModel
を渡す場所のオブジェクトを作成しますArrayList<T>
。public void RelationsClicked() { ArrayList<Relation> data = myParent.dbOperation.getRelations(); RelativeTableModel tModel = new RelativeTableModel(data); // subclass of AbstractTableModel myParent.SetBrowsePanelData(tModel); myParent.SetMainPanel(CashAccountingView.BROWSEPANEL); }
- inを持つ
BrowseListPanel
クラスがあります。そのインスタンスは、メインアプリケーションですでに作成されています。JTable
JScrollPane
- モデルを渡して
BrowseListPanel
、最後にパネルを表示します。
- inを持つ
コード:
public void SetBrowsePanelData(AbstractTableModel tModel) {
browsePanel.setTModel(tModel);
}
// BrowseListPanel's Code
public void setTModel(AbstractTableModel tModel) {
this.tModel = tModel; // tModel = AbstractTableModel
}
// Show the Panel
public void SetMainPanel(String panel) {
activePanel = panel;
SetFontSize();
cards.show(mainPanel, panel);
mainPanel.revalidate();
mainPanel.repaint();
}
しかし、私は見ていませんTable
。BrowseListPanel
(を含む)のオブジェクトJTable
はすでに作成されており、後でTableModel
追加されると思います。したがって、ある種のイベントがで発生する必要がありますsetTModel()
。
私は正しいですか?その場合、どのイベントをスローする必要があり、その実装は何である必要があります。