Esto me está volviendo loco.Cambiar el color de la celda JTable
Sé que, para cambiar el formato de las celdas de la tabla con JTable, tengo que usar mi propio procesador. Pero parece que no puedo implementar esto correctamente.
Esta es mi configuración actual:
public class MyClass
{
public static void main(String args[])
{
JTable myTable = new JTable(10, 10);
myTable.setDefaultRenderer ([I dont know what to put here], new CustomRenderer());
}
}
class CustomRenderer extends DefaultTableCellRenderer
{
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
{
Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
// Formatting
return c;
}
}
¿Qué necesito para usar para el primer parámetro de setDefaultRenderer
? La API solo dice 'clase'. No tengo idea de qué poner allí.
¿Podría alguien explicar, en los términos más simples, cómo voy a implementar esto? Proporcione un ejemplo de cómo puedo cambiar el formato desde el método main()
también.
Esto no parece funcionar para mí. Lo único que he hecho es invocar el método setDefaultRenderer y crear la clase CustomRenderer. ¿Hay algo más que deba hacer para que esto funcione? –
Lo tengo trabajando usando Object.class en lugar de String.class. Sin embargo, no estoy seguro de por qué esto era necesario, porque todos mis datos eran cadenas. ¡Gracias por su ayuda! –
¿No tengo permiso para cambiar el procesador dentro de un oyente? Quiero volver a formatear la tabla cuando se presiona un botón. –