Boa noite tenho uma tabela de veículos onde estou usando uma DefaultTableCellRenderer para colorir as linhas, estou usando uma DefaultTableModel e sei que poderia criar uma TableModel própria por questões de facilidade em acessar alguns dados, mas a questão é que as linhas verticais não aparecem em minha tabela e não sei o porque, tenho dúvidas que pode ser alguma coisa com minha DefaultTableCellRenderer. Será que alguém tem alguma solução?
Já tentei colocar e também não deu certo:
tbVeiculos.setShowGrid(true);
tbVeiculos.setShowVerticalLines(true);
tbVeiculos.setShowHorizontalLines(true);
tbVeiculos.setGridColor(Color.GRAY);
Aqui em baixo segue meu código da DefaultTableCellRenderer e para preencher minha tabela:
public void corLinha()
{
tbVeiculos.setDefaultRenderer(Object.class, new DefaultTableCellRenderer()
{
@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column)
{
JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
Color bege = new Color(253, 227, 167);
Color verde = new Color(38, 166, 91);
if (isSelected)
{
label.setForeground(Color.WHITE);
label.setBackground(verde);
} else if (row % 2 == 0)
{
label.setForeground(Color.BLACK);
label.setBackground(Color.WHITE);
} else
{
label.setForeground(Color.BLACK);
label.setBackground(bege);
}
return label;
}
});
}
private void preencherTabela()
{
JTableHeader Theader = tbVeiculos.getTableHeader();
Theader.setFont(new Font("Roboto Medium", Font.CENTER_BASELINE, 14));
Theader.setBackground(Color.GRAY);
Theader.setForeground(Color.BLACK);
listaVeiculo = ctrvei.recuperaDadosTabela(txtDescricao.getText().toUpperCase());
DefaultTableModel modelo = (DefaultTableModel) tbVeiculos.getModel();
modelo.setNumRows(0);
//CARREGA OS DADOS DA LISTA NA TABELA
for (int i = 0; i < listaVeiculo.size(); i++)
{
modelo.addRow(new Object[]
{
listaVeiculo.get(i).getCodigo(),
listaVeiculo.get(i).getCliente(),
listaVeiculo.get(i).getMarca(),
listaVeiculo.get(i).getModelo(),
listaVeiculo.get(i).getCor(),
listaVeiculo.get(i).getPlaca(),
listaVeiculo.get(i).getAno(),
listaVeiculo.get(i).getDataCadastro()
});
corLinha();
}
tbVeiculos.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
