Vorrei modificare il colore di sfondo delle righe di una JTable in modo da alternare i colori.
Ho scritto questo render e sembra funzionare:
Il risultato è questo:codice:public class AlternateTableCellRender extends DefaultTableCellRenderer { @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) { JLabel label = new JLabel(""); label.setHorizontalAlignment(JLabel.CENTER); label.setFont(new Font("Dialog", Font.PLAIN, 12)); label.setText(value.toString()); label.setOpaque(true); label.setForeground(Color.black); if (row % 2 == 0) { label.setBackground(Color.white); } else { label.setBackground(new Color(204, 204, 255)); } return label; } }
![]()
(non guardate i tag che sono sparati a caso)
Quello che vorrei fare è fare in modo che l'alternanza non sia una riga si ed una no ma variabile a seconda del numero di categorie presenti (nel senso: tutti le righe objective c in bianco, tutto python in azzurrino ecc) :master:
Come posso modificare il render? Ho capito che il "problema" è in if (row % 2 == 0) ma non saprei come modificarlo...
Grazie![]()

Rispondi quotando