(我已经使用了您的命名约定,但您应该阅读我上面关于变量和类的 Java 命名约定的评论)。
您创建一个表并传递一个新的MyModel
到构造函数:
JTable Table = new JTable(new MyModel());
稍后您创建一个(单独的)新的MyModel
in actionPerformed()
:
MyModel NewModel = new MyModel();
File DataFile = fc.getSelectedFile();
ArrayList<String[]> Rs2 = Rd.ReadCSVfile(DataFile);
NewModel.AddCSVData(Rs2);
The problem,是你从不打电话table.setModel(NewModel)
.
为了解决这个问题,将表变量存储为field在你的T1Data
类,以便您稍后可以参考:
private final JTable table;
...
public T1Data() {
super(new BorderLayout(3,3));
this.table = new JTable(new MyModel());
this.table.setPreferredScrollableViewportSize(new Dimension(700, 70));
this.table.setFillsViewportHeight(true);
并将模型设置为actionPerformed()
:
this.table.setModel(NewModel);