Heure et Dates actuelles ..
Résolu
Mayusu
Messages postés
51
Statut
Membre
-
Mayusu Messages postés 51 Statut Membre -
Mayusu Messages postés 51 Statut Membre -
Bonjour,
J'essaye d'afficher l'heure et la dates actuelles d'une manière dynamique .. voilà le code que j'ai écrit mais il ne fonctionne pas et m'affiche le label vide :s
EDIT: Ajout de la coloration syntaxique.
Merci beaucoup d'avance :)
J'essaye d'afficher l'heure et la dates actuelles d'une manière dynamique .. voilà le code que j'ai écrit mais il ne fonctionne pas et m'affiche le label vide :s
public void clock()
{
Thread clock = new Thread()
{
public void Run()
{
try
{
for(;;)
{
Calendar cal = new GregorianCalendar();
int day = cal.get(Calendar.DAY_OF_MONTH);
int month = cal.get(Calendar.MONTH);
int year = cal.get(Calendar.YEAR);
int second = cal.get(Calendar.SECOND);
int minute = cal.get(Calendar.MINUTE);
int hour = cal.get(Calendar.HOUR);
lblClock.setText(hour + ":" + minute + ":" + second + " " + day + "/" + month + "/" + year);
sleep(1000);
}
} catch (InterruptedException e)
{
e.printStackTrace();
}
}
};
clock.start();
}
public Bienvenue() {
initialize();
clock();
}
EDIT: Ajout de la coloration syntaxique.
Merci beaucoup d'avance :)
3 réponses
-
Bonjour,
Je n'ai pas testé, mais la méthodepublic void Run()
n'est pas celle attendue pour définir le corps du thread, c'estpublic void run()
avec un "r" minuscule qui est attendu. Un moyen simple de ne pas se faire avoir c'est de rajouter l'annotation@Override
qui va déclencher une erreur si la méthode sur laquelle elle est posée n'est pas une redéfinition.
Thread clock = new Thread() { @Override public void run() { -
Salut,
J'ai essayé ça et cela fonctionne :
Thread clock = new Thread() { public void run() { try { for(;;) { SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss"); Calendar cl = Calendar.getInstance(); String currentDate = df.format(cl.getTime()); lblClock.setText(currentDate); sleep(1000); } } catch (InterruptedException e) { e.printStackTrace(); } } }; clock.start();-
Oui, ça fonctionne parce que tu as
run()
avec un "r" minusucle, alors que Mayusu asRun()
avec un "R" majuscule, c'est ce que je disais déjà ici.
Comme la méthodestart()
appelle la méthoderun()
, écrire le traitement dans une méthodeRun()
est sans effet pour le Thread.
-
-