Cambiar el color de una fila o celda de un jtable

Publicado por OCTICOCO
29/04/2009 6:59:00

Hola a todos, despues de googlear y buscar ejemplos y todo, me he cansado de probar y no lograr que funcione correctamente el pintado de una fila de un JTable. Lo unico que quiero hacer es que dado un metodo que le pase un JTable, y pintar las filas que cumplan la condicion que si la columna 4 es menor a la 5 (fila en color rojo) o si la columna 4 es mayor a la 6 (color amarillo) pinte la tabla de un color u otro, pero no logro hacer nada. Alguien me puede ayudar a hacer algo??? Por lo menos un metodo que reciba un JTable y la fila y la columna y la pinte de un determinado color. Si me pueden indicar como se haria ese metodo o clase les agradecere muuuuuuucho... Desde ya muchas gracias a todos porque me cance de encontrar ejemplos sin poderlos hacer andar.
.


Respuestas (4)
Publicado por HACY58
22/01/2010 4:22:00

creo esto te servira: *****esta es la clase que te permitira pintar la fila package paq; import java.awt.Color; import java.awt.Component; import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; class render extends DefaultTableCellRenderer { @Override public Component getTableCellRendererComponent (JTable table, Object value, boolean selected, boolean focused, int row, int column ) { setEnabled(table == null || table.isEnabled()); // see question above {if(String.valueOf(table.getValueAt(row,3)).equals("0"))//////aca indico que me pinte de color verde todas //las filas en la cual la ultima columna tiene valor 0. setBackground(Color.green); else setBackground(null); } super.getTableCellRendererComponent(table, value, selected, focused, row, column); return this; } } ***********de esta manera debes llamara a la clase desde tu formulario por ejemplo public class form extends javax.swing.JFrame { public form() { initComponents(); tabla.setDefaultRenderer (Object.class, new render());/// tabla, es la que tienes en tu formulario }

.
Publicado por LIVIO
16/03/2012 21:23:00

Me sirvió de mucho..sludos

.
Publicado por ROBERT
19/03/2012 0:49:00

Muchisimas gracias me sirvio bastante, sigue asi .... Saludos

.
Publicado por ENRIQUE
04/11/2012 16:12:00

Muy buen post!! me sirvió! felicitaciones!!

.
Responder al mensaje
Autor:
E-mail:
Título:
Respuesta:
Educaedu Business, S.L. (Responsable) tratará tus datos personales con la finalidad de gestionar el servicio de participación en la Red y para supervisar el correcto uso de los usuarios de los servicios ofrecidos, derivado de tu consentimiento. Podrás ejercer tus derechos de acceso, supresión, rectificación, limitación, portabilidad y otros derechos, según lo indicado en nuestra Política de Privacidad 


© Educaedu Business S.L. 2013