ordenar un jtable [RESUELTO]

Iniciado por josco, 6 Marzo 2012, 02:36 AM

0 Miembros y 1 Visitante están viendo este tema.

josco

que tal, hay alguna manera de ordenar un jtable por filas. por ejemplo tencgo algo asi:


columna1  columna 2  
1              nombre1
3              nombre3
5              nombre5
4              nombre4
2              nombre2


y quiero que se me ordene

columna1  columna 2  
1              nombre1
2              nombre2
3              nombre3
4              nombre4
5              nombre5

saludos...

Proteus1989

Recuperas el vector de datos y lo ordenas con algún algoritmo de ordenación.
JTable no se si incluye esa función por defecto.

josco

ya lo ordene de la siuiente manera:


DefaultTableModel tablaPedidos = (DefaultTableModel) this.jTpedidos.getModel();
RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(tablaPedidos);
jTpedidos.setRowSorter(sorter);



lleno la tabla con datos





//ordeno la tabla tomando en cuenta la columna cero
            jTpedidos.getRowSorter().toggleSortOrder(0);




era mas facil de lo que pensaba   :P :P :P :P



saludos....

cuba garcia

Capo te paso el codigo de mi tabla.. tambien quiero ordenarla de menor a mayor y no se como hacer...


String [] columnas={"NUMERO DE FACTURA","CLIENTE","FECHA", "TOTAL"};
    String [] registros = new String [4];
    ModeloTabla = new DefaultTableModel(null,columnas);
    String SSQL;
    Connection conect = null;     
         if(filtro.equals("CODIGO")){       
        SSQL= "SELECT * FROM factura, cliente WHERE"
                + " factura.idCliente = cliente.idCliente and factura.numFactura LIKE '%"+cadena+"%'";
        } else {
        SSQL= "SELECT * FROM factura, cliente WHERE "
                + "factura.idCliente = cliente.idCliente and factura.fechaFactura LIKE '%"+cadena+"%'";
        }try{         
        conect = metodosconexion.dataSource.getConnection();
        PreparedStatement st = conect.prepareStatement (SSQL);
        ResultSet rs = st.executeQuery();       
         while(rs.next()){
            registros[0]=rs.getString("factura.numFactura");
            registros[1]=rs.getString("cliente.nomCliente");
            registros[2]=rs.getString("factura.fechaFactura");
            registros[3]=rs.getString("factura.totFactura");
         
           ModeloTabla.addRow(registros);
            }                                 
        tabla.setModel(ModeloTabla);     
       }catch (SQLException e){   
        JOptionPane.showMessageDialog(null, e, " Error de conexion ", JOptionPane.ERROR_MESSAGE);         
        }