当选定JTable中的一行的时候按下按钮删除改行该怎么实现呢?忘提示,谢谢。

解决方案 »

  1.   

    从TableModel中删除相关的那条数据,然后更新一下表现显示就可以了。
      

  2.   

    steedhorse(晨星) 
    能给段代码看看吗
      

  3.   

    用removeRow() 删掉行
    然后再用fireTableDataChanged() ; 更新数据
      

  4.   

    DefaultTableModel 看看这个类
      

  5.   

    JTable jtable = new JTable( );
    DefaultTableModel  model = new DefaultTableModel(new String[]{"column1","column2"},0);
    jtable.setModel(model );
    model.removeRow(jtable.getSelectedRow());
      

  6.   

    一,得到这一行.  int row = 表名.getSelectedRow();
    二,得到这一行所对应的实体:
                 改表的实体类 cate = new 实体();//初始化一个实体
                该实本所对应的模型 model = (模型 ) 表名.getModel();//得到模型
                cate = (实体类) model.getCate(row);//getCate()是在模型中写的,
    三,删除:
                比如按编号删除
                          String NO = cate.getNO();//得到编号
                          Delete(NO);调用删方法
    四,刷新表      
                      该实本所对应的模型 model2= new 模型();
                       表名.setmodel(model2);
    下面是我曾做的一部分相关代码:
            /***************得到相应的行的内容**********************/
            int row = table.getSelectedRow();
            if (row >= 0) {
                OperatorEntity operator = new OperatorEntity();
                OperatorModel model = (OperatorModel) table.getModel();
                operator = (OperatorEntity) model.getoperator(row);
                /***************************************************/
               DBManage.delOperator(operator) ;//删除---delOperator方法写在了DBManage类中
                                                  的static方法,直接用.
              /***************刷新**********************/
               //可以写在一个方法里,用起来更方便
              OperatorModel fresh_model = new OperatorModel();
              table.setModel(fresh_model) ;
              /*************************************/
    不知道这么说,可以明白吗?我的表达力不是很好,
    我在青鸟刚上二期,想交这行的朋友,一起学习,有意的加我