Bonjour a tous
Dans mon application java je veux comparer les valeurs de deux colonnes de JTable .On fait un parcours de tous les lignes de ces deux colonnes et on les compare élément par élément. si la valeur de colonne 1 ( quantité en stock) < la valeur de la colonne 2 (limite) alors la couleur de cette case [i,(numcol)] sera rouge .si non la couleur sera verte.
j'ai essayé ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
package projet_gestion_stock;
 
import java.awt.Color;
import java.awt.Component;
 
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
 
public class MonCellRenderer extends DefaultTableCellRenderer {
 
 
 
		public Component getTableCellRendererComponent(JTable table, Object value,
				boolean isSelected, boolean hasFocus, int row, int column) {
 
			Component cell = super.getTableCellRendererComponent(table, value,
					isSelected, hasFocus, row, column);
			  for(int i =0;i<table.getRowCount();i++){
 
				  Integer val1 = Integer.parseInt( table.getValueAt(i,8).toString());
				  Integer val2 = Integer.parseInt( table.getValueAt(i,10).toString());
				  int x = 11;
				  if(val1 <= val2 && column==8) 
					  cell.setBackground(Color.CYAN);
					  else
							cell.setBackground(Color.WHITE);
 
					 }
			  return cell;
 
		}}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
tbl_prod.setDefaultRenderer(Object.class, new MonCellRenderer());
Mais toute la colonne prend cette couleur et je que j'ai besoin c'est la case ou la condition est vérifiée.