Bonjour,
je debute juste en java, j'ai acheté un livre de Anne Tasso, mais je galère
ce que je voulais faire, c'est
- calculer une différence de date (ça c'est OK)
- ouvrir une fenetre
inclure un JLabel qui me dit le resultat (ma variable s'appelle long depuis)
après quarante douze mille essais j'y suis parvenu, mais mon programme me semble complètement déstructuré.
pourriez vous m'aider dans l'organisation pour que depuis le main je puisse modifier le contenu d'un JLabel et dans l'organisation en général de la structure de mon prog pour eviter les envois de variables redondants aux fonctions et aux class
pour info, voici mon (hum) magnifique (hum hum !...) code
merci à vous
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 import javax.swing.*; import java.awt.FlowLayout; import java.awt.event.*; import java.util.Date; import java.util.GregorianCalendar; public class MonApplication { static long depuis; public static void main(String[] args) { // MaFenetre f = new MaFenetre(depuis); /** La date du départ*/ int anneeLMK = 2015, moisLMK = 03,jourLMK = 27;//27/03/2015 dernier post Date date1 = new GregorianCalendar(anneeLMK,moisLMK-1,jourLMK,15,11).getTime( ); /** je peux mettre annee + mois+jour+heure+minutes ou seulement annee + mois+jour, attention mois = mois-1*/ /** Date du jour */ Date today = new Date( ); // Calcul de différence long diff = today.getTime( ) - date1.getTime( ); System.out.println("La différence en nombre de jour entre \n"+date1+ " \net \n " + today + " \nest : " + (diff / (1000*60*60*24)) + " jours."); depuis = (diff / (1000*60*60*24)); MaFenetre f = new MaFenetre(depuis); if (diff / (1000*60*60*24) > 9){ f.afficher(depuis); } } } class MaFenetre { JFrame mainFrame = null; public MaFenetre(long depuis) { mainFrame = new JFrame(); mainFrame.setTitle("Depot de titre sur LMK a faire"); mainFrame.setSize(320, 240); mainFrame.setContentPane(buildContentPane(depuis)); mainFrame.addWindowListener (new WindowAdapter() { public void windowClosing(WindowEvent ev) { System.exit(0); } }); } public JPanel buildContentPane(long depuis){ JPanel panel = new JPanel(); panel.setLayout(new FlowLayout()); String text = ("coucou "+depuis); JLabel label = new JLabel(text); panel.add(label); return panel; } public void afficher(long diff) { mainFrame.setTitle("pas déposé sur LMK depuis "+diff/ (1000*60*60*24) + " jours"); mainFrame.setVisible(true); } }
Partager