Pessoal estou com um problema ao adicionar uma imagem no jtable ele adiciona em todas as linhas
estou definindo a imagem de acordo com o status e no proprio while para
preencher o j table ja faço esse if se for 0 seta uma imagem senão seta outra ele entra no if passa pelo codigo mas fica somente a primeira que caiu pra todas
Algo você está fazendo errado.
Se não postar o código, não temos como adivinhar o que é.
for (int i = 0; i < jTable1.getRowCount(); i++) {
if (i == 1) {
jTable1.getColumnModel().getColumn(0).setCellRenderer(new Renderer.offline());
}
if(i == 2){
jTable1.getColumnModel().getColumn(0).setCellRenderer(new Renderer.online());
}
}
package Renderer;
import java.awt.Component;
import javax.swing.ImageIcon;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
public class offline extends DefaultTableCellRenderer {
@Override
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);
ImageIcon icon = new ImageIcon("c:\\imagens\\status\\bola_vermelha.PNG");
setText((String) value);
setIcon(icon);
return comp;
}
}
Olá, dentro do seu tableCellRenderer, tens que definir em qual coluna você quer aplicar a imagem, e quando não for a coluna certa você deve remover a imagem, exemplo:
if(column == 1){
ImageIcon icon = new ImageIcon("c:\\imagens\\status\\bola_vermelha.PNG");
setIcon(icon);
}else if(column == 2){
ImageIcon icon = new ImageIcon("c:\\imagens\\status\\bola_verde.PNG");
setIcon(icon);
}else{
setIcon(null);
}
Espero ter ajudado.