我用如下代码生成了一个4行4列的Jtable对象,目的是可以进行矩阵数据的录入,但是如何接受在Jtable中编辑好的数据呢?
JTable example = new JTable (4, 4);

解决方案 »

  1.   

    建议你用这种方式建立Jtable
    String[] columnNames = {"First Name",
                            "Last Name",
                            "Sport",
                            "# of Years",
                            "Vegetarian"};Object[][] data = {
        {"Mary", "Campione",
         "Snowboarding", new Integer(5), new Boolean(false)},
        {"Alison", "Huml",
         "Rowing", new Integer(3), new Boolean(true)},
        {"Kathy", "Walrath",
         "Knitting", new Integer(2), new Boolean(false)},
        {"Sharon", "Zakhour",
         "Speed reading", new Integer(20), new Boolean(true)},
        {"Philip", "Milne",
         "Pool", new Integer(10), new Boolean(false)}
    };JTable table = new JTable(data, columnNames);
    然后可以修改二维数组data来修改Jtable的单元格内容
    这是Java Tutorial的例子另一种方法是利用tableModel类建立表格:
    new AbstractTableModel() {
        public String getColumnName(int col) {
            return columnNames[col].toString();
        }
        public int getRowCount() { return rowData.length; }
        public int getColumnCount() { return columnNames.length; }
        public Object getValueAt(int row, int col) {
            return rowData[row][col];
        }
        public boolean isCellEditable(int row, int col)
            { return true; }
        public void setValueAt(Object value, int row, int col) {
            rowData[row][col] = value;
            fireTableCellUpdated(row, col);
        }
    }简单地说,你构造个类继承AbstractTableModel类,Jtable就能把这个TableModel类的功能用图形界面显示出来如果对Jtable的操作的要求不高,直接用第一种方法就可以了
      

  2.   

    用TableModel
    所有的操作都只是针对TableModel
      

  3.   

    重写TableModel, 最直接的方法, 有效