Bonjour
je voudrais appliquer deux classe Evaluator sur mon JCalendar
l'un pour afficher les date disponible et l'autre pour les date complet
j'ai utilisé le code suivant mais ça ne marche pas
avez vous une idée pourquoi ça marche pas?
Classe DayOfMonthEvaluateur
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 SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); ArrayList<Date> ListeJourDisponible = new ArrayList<>(); ArrayList<Date> ListeJourComplet = new ArrayList<>(); ListeJour lj = new ListeJour(); ManipulationFichierListeHeure.lireFichier("C:\\Tmp\\ListeJour.txt",lj); for (Jour tmp:lj.getListeJ()){ if (tmp.getEtat()== "true") try { ListeJourDisponible.add(dateFormat.parse(tmp.getJour())); } catch (ParseException ex) { Logger.getLogger(FenRDV.class.getName()).log(Level.SEVERE, null, ex); } else try { ListeJourComplet.add(dateFormat.parse(tmp.getJour())); } catch (ParseException ex) { Logger.getLogger(FenRDV.class.getName()).log(Level.SEVERE, null, ex); } } jCalendar1.getDayChooser().addDateEvaluator(new DayOfMonthEvaluateur(ListeJourDisponible)); jCalendar1.getDayChooser().addDateEvaluator(new JourDisponibleEvaluateur(ListeJourComplet)); jCalendar1.setCalendar(Calendar.getInstance());
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 public class DayOfMonthEvaluateur implements IDateEvaluator{ private final List<Date> JourDisponible; public DayOfMonthEvaluateur(List<Date> JourDisponible){ this.JourDisponible = JourDisponible; } @Override public boolean isSpecial(Date date) { return false; } @Override public Color getSpecialForegroundColor() { return null; } @Override public Color getSpecialBackroundColor() { return null; } @Override public String getSpecialTooltip() { return null; } @Override public boolean isInvalid(Date date) { //DayOfWeek dayOfWeek = determineDayOfWeek(date); return JourDisponible.contains(date); } @Override public Color getInvalidForegroundColor() { return null; } @Override public Color getInvalidBackroundColor() { return null; } @Override public String getInvalidTooltip() { return null; } }
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 public class JourDisponibleEvaluateur implements IDateEvaluator{ private final List<Date> JourDisponible; public JourDisponibleEvaluateur(List<Date> JourDisponible){ this.JourDisponible = JourDisponible; } @Override public boolean isSpecial(Date date) { return false; } @Override public Color getSpecialForegroundColor() { return Color.RED; } @Override public Color getSpecialBackroundColor() { return null; } @Override public String getSpecialTooltip() { return null; } @Override public boolean isInvalid(Date date) { return false; } @Override public Color getInvalidForegroundColor() { return null; } @Override public Color getInvalidBackroundColor() { return null; } @Override public String getInvalidTooltip() { return null; }
Partager