在jTable Java中操作字段

时间:2009-08-18 02:40:29

标签: java jtable

我使用以下代码填充了我的jTable。它有两列,第一列有变量名,第二列是其依赖项列表。用户可以通过从jTable中的列表中选择它们来更改依赖关系。

当用户更改值时,我想将行添加到另一个jTable(用户无法编辑。我该怎么做?

填充表格的代码是

      Vector<Vector> data = new Vector<Vector>();
      for (String v : acn.getVariableNames()) {
        Vector tmp = new Vector();
        tmp.add(v);
        ArrayList<String> temp = new ArrayList<String>();
        for (String u : acn.getVariableDomain(v)) {
            temp.add(u);
        }
        tmp.add(temp);
        data.add(tmp);
    }
    Vector names = new Vector();
    names.add("Variable");
    names.add("Domain Value");
    DefaultTableModel dt = new DefaultTableModel();
    dt.setDataVector(data, names);

    jTable2.setModel(dt);
    jTable2.getColumnModel().getColumn(1).setCellEditor(new ChangeImpactEditor());
    jTable2.getColumnModel().getColumn(1).setCellRenderer(new TableListRenderer());

1 个答案:

答案 0 :(得分:0)

我这样做的方法是覆盖

public void setValueAt(Object aValue, int rowIndex, int columnIndex);
来自TableModel的

。 在用户编辑了值

之后,JTable会调用setValue方法

在您的overriden方法中,您可以在另一个tablemodel中设置值