[C] Interrompre une fonction qui attend une action utilisateur

Interrompre une fonction qui attend une action utilisateur [C] - C - Programmation

Marsh Posté le 03-01-2009 à 21:35:20    

Bonsoir ;)
 
Je suis confronté à un petit soucis ce soir.
 
Pour les besoins d'un programme j'aimerais en même temps faire :
- un affichage qui varie toutes les secondes avec un décompte
- faire appel a une fonction qui attends un clic de la part de l'utilisateur (de la meme maniere qu'un scanf attends que l'utilisateur entre quelque chose) qu'on appelera AttendClic pour faciliter la compréhension  :D  
 
De telle sorte que l'on sorte de la "boucle" :
- si l'utilisateur clique
ou
- si le décompte a atteind 0
 
Donc pour l'instant pour la partie affichage et décompte j'ai ca dans les grandes lignes :
 

Code :
  1. i = 5
  2. while(i>=0){
  3. /* des lignes pour la modification de l'affichage */-
  4. wait_seconds(1);
  5. i--
  6. }


 
Sachant que la fonction wait_seconds est mise a ma disposition ;)
 
Et mon idée serait donc de faire appel a la fonction AttendClic pendant une seconde puis la killer et refaire appel a elle etc... pendant 5 sec mais je ne sais pas comment faire du coup je m'en remet à vous ;)
 
Difficile d'être clair mais bon   :sweat:  
 
Voila :jap:
 
[EDIT] En cherchant des problèmes similaires je retrouve souvent l'idée d'un deuxième processus sauf que je ne sais pas faire et aimerais eviter cette solution si possible  :pt1cable:


Message édité par skurlat le 03-01-2009 à 21:50:09
Reply

Marsh Posté le 03-01-2009 à 21:35:20   

Reply

Marsh Posté le 03-01-2009 à 22:35:08    

Utilise un timer

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed