Bonjour à tous,

J'ai beau me creuser la tête, je ne trouve pas comment faire pour placer mes pictogrammes en dessous de la bonne date récupérée dans une base de donnée MySQL.
Ma JApplet charge 20 dates passées, 20 dates futures et la date courante ( label 20 ). Ces dates sont renouvelées à chaque mouseReleased lorsqu'on effectue un dragg dans la fenêtre.

Une image sera plus explicite:



Après un dragg:



Ici, j'ai placé un pictogramme à une position précise ( bouge avec la souris ).

Ce que je voudrais c'est qu'avec les dates que je récupère d'une base de donnée MySQL je positionne un pictogramme en dessous du label de même date.

Je précise que la récupération des dates est faite, elles sont stockées dans un tableau de dates.

Auriez-vous une idée de comment je pourrais m'y prendre?

PS: je ne peux pas vous donner mon code pour récupérer les dates car elle effectue une connexion sur un serveur sécurisé où une identification est nécessaire.

Merci de vos réponses!

Méthode qui récupère la date:
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
    public Date recoiDate(String attribut, int n)
    {
    	List<MonObject> list = MonObject.envoiRequete();
    	Date attributDate [] = new Date [list.size()];
    	//En fonction de l'attribut on renvoi le type de valeur correspondant
    	if (attribut.equals("date_debut"))
    	{
    	for (MonObject object : list) {
    		attributDate [(object.getId_Event())-1] = (object.getDate_Debut());
    	}
    	System.out.println("Il y'a "+list.size()+" dates entrées");
    	System.out.println("Valeur de "+attribut+" de la date n°"+n+" : "+attributDate[n]);
    	}
 
    	return attributDate [n];
    }
Méthodes pour l'affichage et réactualisation des JLabels de dates:
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
	public void chargeDates(Date dates[], int jourDebut, int echelle)
	{
		calendar = Calendar.getInstance();
		//if(echelle==1 || echelle==2 || echelle==3){
		//calendar.set(annee, mois, jour); //-----------------------
		//~ System.out.println("CALENDAR =   "+calendar);
		System.out.println("Jour="+jour+" Mois="+mois+" Annee="+annee);
 
		if (echelle==0){
		calendar.add(Calendar.DATE, jourDebut); 
		for(int i=0; i<41; i++)
		{
			dates[i]=calendar.getTime();
			calendar.add(Calendar.DATE, +1);
 
			//if(dates[i]==appli.date_debut[i]){
			//art.setBounds(posFleche+60*i, 50, 200, 200);
		//	System.out.println("BIIIIIM");}
		}
	}
		if (echelle==1){
		calendar.add(Calendar.WEEK_OF_MONTH, jourDebut); 
		for(int i=0; i<41; i++)
		{
			dates[i]=calendar.getTime();
			calendar.add(Calendar.WEEK_OF_MONTH, +1); 
		}
	}			
		if (echelle==2){
		calendar.add(Calendar.MONTH, jourDebut); 
		for(int i=0; i<41; i++)
		{
			dates[i]=calendar.getTime();
			calendar.add(Calendar.MONTH, +1); 
		}
	}	
		if (echelle==3){
		//calendar.set(annee, calendar.get(calendar.MONTH), calendar.get(calendar.DATE)); //-----------------------
		calendar.add(Calendar.YEAR, jourDebut);
		for(int i=0; i<41; i++)
		{
			dates[i]=calendar.getTime();
			calendar.add(Calendar.YEAR, +1); 
		}
	}
	//calendar.getInstance();
	}
 
	public void positionneLabels()
	{
		for(int i=0; i<41; i++)
		{
			// les 31 dates sont espacées de ### pixels
			if (echelle==0 || echelle==1){
			labDates[i].setBounds(posLabel20+(i-20)*120, 30, 120, 40);}
			if (echelle==2){
			labDates[i].setBounds(posLabel20+(i-20)*120, 30, 120, 40);}
			if (echelle==3){
			labDates[i].setBounds(posLabel20+(i-20)*120, 30, 120, 40);}
		}
		// la flèche est posisionnée sur la date du jour (label20)
		fleche.setBounds(posFleche, 70, 28, 64);
		art.setBounds(posFleche-50, 100, 50, 50);
	}
 
	public void rechargeLabels(Date dates[])
	{
		for(int i=0; i<41; i++)
		{
			if (echelle==0){
			labDates[i].setText("lab"+i+":"+simpleFormatDay.format(dates[i]));
				labDates[i].setBounds(posInitLabel20+(i-20)*120, 30, 120, 40);}//("lab"+i+":"+sim......
			if (echelle==1){
			labDates[i].setText("<html>lab"+i+": Semaine du <br>"+simpleFormatWeek.format(dates[i]));
				labDates[i].setBounds(posInitLabel20+(i-20)*120, 30, 120, 40);}
			else if (echelle==2){
			labDates[i].setText("<html>lab"+i+": Mois de <br>"+simpleFormatMonth.format(dates[i]));
				labDates[i].setBounds(posInitLabel20+(i-20)*120, 30, 120, 40);}
			else if (echelle==3){
			labDates[i].setText("lab"+i+":"+"Année "+simpleFormatYear.format(dates[i]));
				labDates[i].setBounds(posInitLabel20+(i-20)*120, 30, 120, 40);}
		}
		fleche.setBounds(posFleche, 70, 28, 64);
	}