Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2959 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Le timer

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Le timer

n°2049563
urameshi
Posté le 17-01-2011 à 00:05:12  profilanswer
 

Bonsoir tous le monde,j'ai un problème au niveau de mon code c'est à dire que je dois afficher un message pendant un laps de temps précis 8 secondes et passer ce laps de temps le message ne doit plus être visible.Pour ce faire j'ai donc utiliser un timer,le  code que j'ai insérer marche mais ne donne pas le résultat voulue car il affiche mon message en continue toute les 8 secondes.C'est pourquoi je vous demande votre aide voici mon code.
<citation>import java.util.Scanner;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Date;
import java.util.*;  
import java.awt.*;
 
 
public class projet
{
 
public static void main (String[] args)    {  
   System.out.println("Niveau 1 veuillez tapez le nombre qui est affiché." );  
 
 Timer timer = new Timer();
        timer.schedule (new TimerTask() {
 
     public void run()
  {  
      int a = 1030;/*initialisation de la variable  dans le run*/      
 Scanner in = new Scanner(System.in);            
                     
 System.out.println ( + a);
            }
     }, 0, 8000);
 
 
     
}
     
} </citation>

mood
Publicité
Posté le 17-01-2011 à 00:05:12  profilanswer
 

n°2049581
Bidem
Posté le 17-01-2011 à 09:23:30  profilanswer
 

La méthode schedule que tu as utilisé "schedule(TimerTask task, long delay, long period)" programme l'execution toutes les 8 secondes.
 
Utilise une version qui ne lance la tache qu'une fois après un delai d'attente.
 
En bref :

Code :
  1. timer.schedule (new TimerTask() {
  2. ...
  3. }, 8000);

n°2049754
urameshi
Posté le 17-01-2011 à 22:04:05  profilanswer
 

c'est justement ce que je voudrais faire,mais je sais pas le faire.

n°2049774
Bidem
Posté le 17-01-2011 à 23:48:52  profilanswer
 

...
 
Dans ton code, tu utilises la méthode à 3 paramètres :
 - le TimerTask
 - le délai (0)
 - la période à laquelle le TimerTask est lancé (8000)
 
Il suffit juste que tu enlèves le 2ème paramètre

n°2049869
urameshi
Posté le 18-01-2011 à 12:55:14  profilanswer
 

merci j'ai fait ce que tu as dit et sa à stoppé la répétition.Mais le problème c'est que sa fait l'inverse de ce que je veux,car le message n'est pas visible pendant 8 secondes puis il apparait ,alors que je veux que le message apparaisse pendant 8 secondes et qu'il ne sot plus visible.
Aurait tu une solution s'il te plait?

n°2049895
Bidem
Posté le 18-01-2011 à 15:14:35  profilanswer
 

En fait, dans le TimerTask il faut mettre le code pour effacer le message.
 
Mais je pressent que ton problème en fait c'est que tu veux effacer un message affiché sur la sortie standard... et là je ne sais même pas si c'est possible (délai ou non).
 
Essaye plutôt d'afficher ton message dans quelque chose que tu peux masquer/supprimer après (interface swing par exemple).

n°2050037
urameshi
Posté le 18-01-2011 à 22:36:10  profilanswer
 

J'essayerais de faire sa.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Le timer

 

Sujets relatifs
Un timer ou chronomètre sur une applicationun Timer
Pgsql/C: truncate table après un timer???les interruptions et le timer_68HC11
[php] Problème affichage tableau avec timerDécompte (timer) comme dans les jeux type ogame,etc...
Pic16f877A : Incompatibilité I2C / Timer / EcranSleep ou timer
Affichage de texte provenant d'une base de donnée avec un timer....matlab timer timeout?
Plus de sujets relatifs à : Le timer


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR