Bonjour,
J'ai fais un petit code qui me permet de taper dans un jTextField, des chiffres à la suite, et ensuite cela me les transforme en heure minute, exemple : 1254 me donnera 12h54 etc...
Pour mes tests je faisais afficher le résultat dans un "println":etSystem.out.println("La chaine inferieur a 4 caracteres => " + sb1);mais maintenant que ca fonctionne bien, je voudrais que cela me l'affiche directement dans mon jTextField..System.out.println("La chaine egale a 4 caracteres => " + sb2);
Je n'arrive pas à trouver la solution.. Car en plus, je me servirais du même jTextField pour taper mes chiffres et pour afficher le résultat à la fin.. je sais même pas si c'est faisable ?
Mon code de débutant est certainement laborieux mais il fonctionne au final..je m'exerce !
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 public class GestionHeure { public String getmValeur() { return mValeur; } public void setmValeur(String mValeur) { this.mValeur = mValeur; } private String mValeur; private String mDeuxDernierCaractereString; private Integer mMesDeuxDernierCaractereEntier; private String mMesDeuxPremierCaractereString; private Integer mMesDeuxPremierCaractereEntier; public void traitementHeure(String mValeur) { if (mValeur.length() > 4) { System.out.println("ERREUR !! Il y a plus de 5 caracteres, recommencez..."); } else { if (mValeur.length() < 3) { System.out.println("ERREUR !! Il faut minimum 3 caracteres."); } else { if (mValeur.length() < 4) { StringBuilder str = new StringBuilder(mValeur); //Je rajoute un "0" devant le 1er chiffre str.insert(0, "0"); //Je récupère les 2 derniers caractères mDeuxDernierCaractereString = str.substring(2, 4); //Je les convertis en ENTIER mMesDeuxDernierCaractereEntier = Integer.valueOf(mDeuxDernierCaractereString); //Je test ces 2 caractères si > 59 if (mMesDeuxDernierCaractereEntier > 59) { System.out.println("ERREUR !! Les 2 derniers caracteres sont superieur a 59 minutes"); } else { StringBuffer sb1 = new StringBuffer(str); sb1.insert(2, "h"); System.out.println("La chaine inferieur a 4 caracteres => " + sb1); } } else { StringBuffer sb2 = new StringBuffer(mValeur); //Je récupère les 2 derniers ou 2 premiers caractères mDeuxDernierCaractereString = sb2.substring(2, 4); mMesDeuxPremierCaractereString = sb2.substring(0, 2); //Je les convertis en ENTIER mMesDeuxDernierCaractereEntier = Integer.valueOf(mDeuxDernierCaractereString); mMesDeuxPremierCaractereEntier = Integer.valueOf(mMesDeuxPremierCaractereString); //Je test ces 2 caractère si > 59 minutes ou > 23 heures if (mMesDeuxDernierCaractereEntier > 59 || mMesDeuxPremierCaractereEntier > 23) { System.out.println("ERREUR !! Les 2 derniers ou premier caracteres sont superieur a 59 minutes ou 23 heures"); } else { sb2.insert(2, "h"); System.out.println("La chaine egale a 4 caracteres => " + sb2); } } } } } }
Partager