Parte del código de la clase MyRenderer.java
public class MyRenderer extends DefaultTableCellRenderer {
Color background;
Color foreground;
public MyRenderer (Color background,Color foreground) {
super();
this.background = background;
this.foreground = foreground;
}
public Component getTableCellRendererComponent(JTable table, Object value,boolean isSelected, boolean hasFocus, int row, int column) {
Component comp = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
comp.setBackground(background);
comp.setForeground(foreground);
return comp;
}
}
Para hacer uso de esta clase solo es necesario escribir este código en el lugar donde esta el jTable:
jTable.getColumnModel().getColumn(0).setHeaderRenderer(new MyRenderer(Color.orange,Color.orange));
La clase MyRenderer tiene definido un constructor que recibe 2 parámetros Color, los cuales corresponden a los colores de fondo y de fuente.
Para hacer uso de esta clase solo es necesario escribir este código en el lugar donde esta el jTable:
jTable.getColumnModel().getColumn(0).setHeaderRenderer(new MyRenderer(Color.orange,Color.orange));
La clase MyRenderer tiene definido un constructor que recibe 2 parámetros Color, los cuales corresponden a los colores de fondo y de fuente.
4 comentarios:
Muy bueno, felicitaciones, justo lo que buscaba.
Pero también buscaba como centrar el encabezado y descubrí esto:
Dentro de getTableCellRendererComponent(...) colocar:
this.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
y para colocar un borde al encabezado:
this.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(14, 14, 162)));
y para la letra en negrita:
comp.setFont(new java.awt.Font("Tahoma", 1, 11));
Te felicito Muchas Gracias.
Excelente aporte.
Tenemos un grupo en telegran: JAVA POO
Exelente ayuda ,solo se que nada se , Gracias.
Publicar un comentario