Como pintar o bakground de uma row de uma jTable? [Resolvido]

Eu gostava de pintar o background de uma row numa jtable?

Para fazer um efeito de zebra, alternado as cores.

Se alguém soubesse dizer…
Agradecia

Oi,

Algo do tipo:

final JTable tabela = new JTable(conteudo, colunas){ public Component prepareRenderer(TableCellRenderer renderer, int rowIndex, int vColIndex) { Component c = super.prepareRenderer(renderer, rowIndex, vColIndex); if (rowIndex % 2 == 0 && !isCellSelected(rowIndex, vColIndex)) { c.setBackground(Color.yellow); } else { c.setBackground(getBackground()); } return c; } };

Tchauzin!

Sim exacto!!! Obrigado

jTable1 = new javax.swing.JTable(){ public Component prepareRenderer(TableCellRenderer renderer, int rowIndex, int vColIndex) { Component c = super.prepareRenderer(renderer, rowIndex, vColIndex); if (rowIndex % 2 == 0 && !isCellSelected(rowIndex, vColIndex)) { c.setBackground(Color.yellow); } else { // If not shaded, match the table's background c.setBackground(getBackground()); } return c; } };

ok

Oi,

Teria como passar uma classe de exemplo?

Tchauzin!

Obrigado, mesmo… Consegui resolver!!

Oi,

Se o seu tópico foi respondido e você está satisfeito, segue:

  • Pressione o botão de seu primeiro post
  • Acrescente no final do título a tag [RESOLVIDO]

Tchauzin!

[quote=lina]Oi,

Se o seu tópico foi respondido e você está satisfeito, segue:

  • Pressione o botão de seu primeiro post
  • Acrescente no final do título a tag [RESOLVIDO]

Tchauzin![/quote]

tenho o mesmo problema, mas não consigo pintar as linhas da tabela em modo zebrado
Segue a classe:
class MyCellRenderer extends DefaultTableCellRenderer {

    private Color whiteColor = new Color(254, 254, 254);
    private Color alternateColor = new Color(204, 204, 204);
    private Color selectedColor = new Color(61, 128, 223);

    @Override
    public Component getTableCellRendererComponent(JTable table,
            Object value, boolean selected, boolean focused, int row,
            int column) {

        super.getTableCellRendererComponent(table, value, selected, focused, row, column);

        Color bg;
        if (!selected) {
            bg = (row % 2 == 0 ? alternateColor : whiteColor);
        } else {
            bg = selectedColor;
        }

        setBackground(bg);
        setForeground(selected ? Color.white : Color.black);

        /*
         * if (value instanceof ImageIcon) { setIcon((ImageIcon) value);
         * setText(""); } else setIcon(null);
         */
        return this;
    }
}