• Domingo 19 de Mayo de 2024, 21:23

Autor Tema:  Problema con Jtable  (Leído 1016 veces)

turicuen

  • Miembro activo
  • **
  • Mensajes: 32
    • Ver Perfil
Problema con Jtable
« en: Lunes 8 de Septiembre de 2008, 08:48 »
0
Tengo problemas con un jTable, lo que quiero es que segun el valor de una celda esta se vuelva de un color o de otro.
tengo definido mi propio Render, el problema es que me colorea todas del mismo color segun el valor que tenga la ultima celda, me va comprobando y pintando todas las celdas dependiendo del ultimo valor leio, modificando el color de todas las anteriores. Como lo puede solucionar??


Código: Text
  1. import java.awt.Color;
  2. import java.awt.Component;
  3. import javax.swing.JTable;
  4. import javax.swing.table.DefaultTableCellRenderer;
  5.  
  6.  
  7. public class MyRenderer extends DefaultTableCellRenderer {
  8.  
  9.     Color background;
  10.     Color foreground;
  11.  
  12.     public MyRenderer(Color background, Color foreground) {
  13.         super();
  14.         this.background = background;
  15.         this.foreground = foreground;
  16.  
  17.     }
  18.  
  19.  
  20.  public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int fila, int columna) {
  21.         Component cell = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, fila, columna);
  22.  
  23.         String valor = table.getValueAt(2, columna).toString();
  24.         if (valor.equalsIgnoreCase("Ocupada")) {            
  25.             cell.setBackground(Color.red);
  26.         } else {            
  27.             cell.setBackground(Color.GREEN);
  28.         }
  29.  
  30.         return cell;
  31.  
  32.     }
  33. }
  34.  
  35.