Foros del Web » Programación para mayores de 30 ;) » Java »

Seleccionar el contenido fila a fila de una columna en JTable

Estas en el tema de Seleccionar el contenido fila a fila de una columna en JTable en el foro de Java en Foros del Web. Buenas compañeros, como dice el titulo, estoy realizar una función en la que establezca el puntero en una posición de la tabla comparandola con el ...
  #1 (permalink)  
Antiguo 25/12/2014, 13:04
 
Fecha de Ingreso: julio-2014
Ubicación: España
Mensajes: 83
Antigüedad: 10 años, 3 meses
Puntos: 2
Seleccionar el contenido fila a fila de una columna en JTable

Buenas compañeros, como dice el titulo, estoy realizar una función en la que establezca el puntero en una posición de la tabla comparandola con el nombre que se ve en el código y, luego, buscar el contenido fila a fila de esa columna.

Código PHP:
for (int i 0<= tbl.getRowCount(); i++) {
            
columna tbl.getColumnModel().getColumn(i);
            
columna.setPreferredWidth(180);
            if (
tbl.getColumnName(i).equals("FECHA DE ENTREGA")) {
                for (
int a 0tbl.getColumnCount(); a++) {
                }
            }

        } 
Necesito ayuda para terminar el código.
  #2 (permalink)  
Antiguo 26/12/2014, 02:07
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 9 meses
Puntos: 10
Respuesta: Seleccionar el contenido fila a fila de una columna en JTable

Código PHP:
for (int i 0<= tbl.getRowCount(); i++) {
            
columna tbl.getColumnModel().getColumn(i);
            
columna.setPreferredWidth(180);
            if (
tbl.getColumnName(i).equals("FECHA DE ENTREGA")) {
                for (
int a 0tbl.getColumnCount(); a++) {
                     
System.out.print(tbl.getModel().getValueAt(ia));
                }
            }

        } 
  #3 (permalink)  
Antiguo 26/12/2014, 04:54
 
Fecha de Ingreso: julio-2014
Ubicación: España
Mensajes: 83
Antigüedad: 10 años, 3 meses
Puntos: 2
Respuesta: Seleccionar el contenido fila a fila de una columna en JTable

Creo que no me expliqué bien, digamos que tengo 5 filas en la primera columna:
Recorro la primera fila y encuentro que la posición 3 es la que quiero, me posiciono en ese puntero y entonces lo recorro de nuevo para recoger todos los valores de esa posición.

...creo que mas o menos me voy aclarando... xD

EDITO: Objetivo conseguido, el menos en parte.

Código PHP:
public class MyCellRenderer extends DefaultTableCellRenderer {
    
/**
     * 
     */
    
private static final long serialVersionUID 1832348616797279177L;

    public 
Component getTableCellRendererComponent(JTable tblObject value,
            
boolean selectedboolean focusedint rowint column) {
        
// Recoger la fecha del sistema y restarle 30 días
        
Calendar calendar GregorianCalendar.getInstance();
        
Date fecha calendar.getTime();
        
calendar.setTime(fecha);
        
calendar.add(Calendar.DAY_OF_YEAR, -30);
        
Date tiempo calendar.getTime();
        
SimpleDateFormat formatoDeFecha = new SimpleDateFormat("dd-MM-yyyy");
        
// Inicio la busqueda de las fechas correspondientes para cambiar su fondo a "rojo"
        
String prueba null;
        for (
int i 0tbl.getColumnCount(); i++) {
            if (
tbl.getColumnName(i).equals("FECHA DE ENTREGA")) {
                
int count tbl.getSelectedColumn() + (1);
                for (
int a 0tbl.getRowCount();) {
                    
prueba tbl.getValueAt(acount).toString();
                    
System.out.println(prueba);
                    
// Una vez recogido los datos, se hace un parse
                    
Date fechapedido null;
                    try {
                        
fechapedido formatoDeFecha.parse(prueba);
                    } catch (
ParseException e) {
                        
e.printStackTrace();
                    }
                    
JLabel cell = (JLabelsuper.getTableCellRendererComponent(tblvalue,
                            
selectedfocusedacount);
                    
System.out.println(fechapedido "1");
                    if (
fechapedido.before(tiempo)) {
                        
System.out.println(fechapedido+"//"+tiempo);
                        
//cell.setBackground(Color.ORANGE);
                        
return cell;
                    } else {
                        
//cell.setBackground(Color.BLACK);
                        
return cell;
                    }
                }
            }
        }
        return 
null;
    }
}

Ahora lo que me pasa es que se como cambiar la celda específica de color...porque se aplica a la fila entera y eso no lo quiero T_T

Última edición por yesod91; 26/12/2014 a las 11:54
  #4 (permalink)  
Antiguo 27/12/2014, 17:39
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 9 meses
Puntos: 10
Respuesta: Seleccionar el contenido fila a fila de una columna en JTable

https://www.google.es/?gfe_rd=cr&ei=...nge+cell+color
http://docs.oracle.com/javase/tutori...nts/table.html

Etiquetas: columna, contenido, fila, jtable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:13.