Bonjour,


Je souhaite créer un timer limitant le temps de réponse dans un code destiné à interroger l'utilisateur.
Après un certain temps on passe à la question suivante.
Je n'y parviens pas... Help

J'ai bien trouvé ce code mais je n'arrive pas à l'insérer dans ma classe "examiner"

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
import java.util.Timer;
import java.util.TimerTask;
 
 
public class TimerPerso {
 
 
    public static void main(String[] args) {
 
 
        long temps = 2000;                      // délai avant de répéter la tache : 2000 = 2  seconde
        long startTime = 0;                    // délai avant la mise en route (0 demarre immediatement)
        Timer timer = new Timer();             // création du timer
        TimerTask tache = new TimerTask() {     // création et spécification de la tache à effectuer
            @Override
                public void run() {
                    System.out.println("salut");    // ici se qui doit être effectué
                }
        };
        timer.scheduleAtFixedRate(tache,startTime,temps);  // ici on lance la mecanique
 
        }
 
}
Il faudrait qu'à chaque itération, le temps soit limité.
Voici le code de ma classe:

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
public void examiner(int nb) {
	Scanner sc=new Scanner(System.in);
	créerExamen();
	for (int i=1;i<nb+1;i++) {
		Random r = new Random(0,9);
		int multi = r.getRandom();
		Random rnd = new Random (0,table);
		int rndTable= rnd.getRandom();
		this.afficherExamen(multi, rndTable);
		int rep=sc.nextInt();
		if (rep==(multi+1)*(rndTable+1)) {
			System.out.println("Bravo!");}
		else {
			System.out.println("Dommage! La bonne réponse était "+(multi+1)*(rndTable+1));
		}
	}
	sc.nextLine();
	System.out.println("");
	System.out.println("Terminé!");
}

Merci d'avance!