java - 通过自定义表模型将行添加到 jtable

标签 java swing jtable defaulttablemodel

我已经创建了一个扩展 DefaultTableModel 的表模型。

public class TableModel extends DefaultTableModel {
List<VariableDetails> data;
public AttachedVariableTableModel(){
super();        
this.data=Collections.synchronizedList(new ArrayList<VariableDetails>());
}

//method for adding rows
public void addRow(VariableDetails varDetails){

    this.data.add(varDetails);
    fireTableRowsInserted(this.data.size()-1,this.data.size()-1);
    }

}

我试图向已有数据的表中添加行。

tModel.addRow(new  VariableDetails());

但无法添加行。没有异常和错误。这里到底出了什么问题?我该如何解决这个问题?提前致谢。

最佳答案

  1. 为什么有super();

  2. DefaultTableModel可以添加Object[]Vector

  3. 必须覆盖 AbstractTableModel,而不是 DefaultTableModel,必须覆盖所有 get/set methods , 在方法中使用适当的 fireXxxXxx() ,否则 View 中没有可见的东西 (JTable)

  4. 可以从 List Table Model 开始或 Row Table Model

关于java - 通过自定义表模型将行添加到 jtable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13283916/

相关文章:

java - 我是否应该同步监听器通知?

java - 从 JButton 按下操作监听器返回字符串?

java - 如何使用java从mysql数据库中的多个列中进行搜索

java - 禁用 JTable 上的列标题排序

java - JVM 中多次出现同名组?

java - 使用 Path 类在 Java 中的两个路径之间创建路径

java - 故障排除: JDialog which is modal and yet not modal?

java - Java应用程序无法连接到MySQL数据库

java - JTable 中的 JFileChooser

java - 将 maven-gae 和 google 插件用于 eclipse (GPE) 时出错