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...
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.
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....
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);
}