E ai pessoal
e o seguinte fiz um CellRenderer ainda nao entendendo muito bem como e que ele funciona…
eu queria que ele quando encontrasse uma celula com o valor “1”(String) mudasse o BackGround para Azul.
mas o meu nao faz isso. ele muda a cor de todas as celulas da coluna que voce clicar depois de inserir 1 em qq uma daquela coluna.
outra coisa e que ele pinta tudo o numero e o fundo de azul e nao vejo mais o numero.
como resolver isso ?
[code]
package TableModel;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.border.Border;
import javax.swing.table.TableCellRenderer;
import java.awt.Color;
import java.awt.Component;
import javax.swing.table.DefaultTableCellRenderer;
public class ColorRenderer 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);
if (value != null)
{
if (value.equals("1"))
{
super.setBackground(Color.blue);
return this;
}
else
{
return this;
}
}
else
{
return c;
}
}
}[/code]
sei que deve ser bobo mas estou com problemas serios de entender como funciona a JTable por dentro.