我是用table读取数据库中的一张表的内容,然后让他显示在table中的我想这样:表格的行数比数据库这张表多一行。其他行用来显示数据库中那张表的数据。最后一行一开始是空的。用户在最后一行输入数据后。先检测是否全都合法,合法的话。把这条记录添加到数据库的表中。然后table中要自动在增加一个新空白行,来接收用户下一个要新建的。反而如果刚输入的不合法,则清空掉table这一行。然后,用户如果修改table中某一行内容。修改后先判断是否合法,合法就改数据库内容,否则将table这一行重新显示为原来的样子我觉得应该能够实现吧。请给出给具体的代码最好有相似的实例。谢谢。学java时间不长,没什么经验

解决方案 »

  1.   

    还得再问一个问题:table中能否设置,哪些列的内容可以编辑,哪些禁止修改???
      

  2.   

    http://blog.sina.com.cn/s/blog_7d64b0580100re9q.html更新jTable1.setModel(this.Model(str));//调用新的Model
    public javax.swing.table.DefaultTableModel Model(String[][] str) {
           return new javax.swing.table.DefaultTableModel(
                    str,
                    new String[]{
                "条形码", "书名", "单价", "数量", "金额"
            }) {
                boolean[] canEdit = new boolean[]{
                    false, false, false, true, false
                };
                public boolean isCellEditable(int rowIndex, int columnIndex) {
                    return canEdit[columnIndex];
                }
                };
        }
      

  3.   

    这样是可以实现的。你从数据库中查询数据。然后把值这知道JTable中去。然后自己手动增加一行。全部为""值。当用户选中最后一行时,且在每一列输入数据。当用户按回车或者失去该行焦点时,你就;判断该行数据是否合法。如果合法就插入打数据库,然后自己手动增加一行,值全为""、即可。