1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| import javax.swing.*;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;
import java.awt.*;
public class Fenetre extends JFrame implements TableCellRenderer {
private static TableCellRenderer tcr;
public Fenetre(TableCellRenderer tcr){
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("Liste des PC ");
this.setSize(500, 250);
Object[][] data = {
{"PC 1", "PC Fixe", "MOI","OK","24"},
{"PC2", "PC Fixe", "TOI","OK","24"},
{"PC3", "PC Fixe", "TOTO","A REMPLACER","24"},
{"PC4", "PC Fixe", "GUDULE","A REMPLACER","24"},
};
String title[] = {"Nom Machine", "Type", "Utilisateur","Etat","Ecran"};
JTable tableau = new JTable(data, title);
tableau.setBackground(Color.YELLOW);
DefaultTableCellRenderer rightRenderer = new DefaultTableCellRenderer();
rightRenderer.setHorizontalAlignment(DefaultTableCellRenderer.CENTER);
tableau.getColumn("Type").setCellRenderer( rightRenderer );
tableau.getColumn("Utilisateur").setCellRenderer( rightRenderer );
tableau.getColumn("Etat").setCellRenderer( rightRenderer );
tableau.getColumn("Ecran").setCellRenderer( rightRenderer );
tableau.setAutoCreateRowSorter(true);
this.getContentPane().add(new JScrollPane(tableau));
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
Component comp = this.tcr.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if ((row & 1) == 0) { // Ligne paire
comp.setBackground(Color.RED);
} else { // Ligne impaire
comp.setBackground(Color.BLUE);
}
return comp;
}
public static void main(String[] args){
Fenetre fen = new Fenetre(tcr);
fen.setVisible(true);
}
} |
Partager