screensaver : lancer 2 actions en même temps et attendre

Le
maxime.saad
Bonjour,

J'ai un soucis au niveau de la création d'un projet. Je souhaite faire
un fond d'écran, et j'utilise donc codeblocks, avec allegro.
Mon problème se situe dans le fait que je souhaiterais lancer
plusieurs opérations en meme temps, si c'est possible. Je m'explique :

Je souhaites reproduire un écran comme "matrix", avec des séries de
lettres qui s'affichent au fur et à mesure. Ex :

l l l l l l
i i i i i i
g g g g g g
n n n n n n
e e e e e e
1 2 3 4 5 6



Cependant, je souhaiterais qu'il y a du temps entre chaque ligne,
mais aussi entre chaque lettre, qui s'affiche.

Ce que j'ai deja fait, c'est un timer, qui toute les secondes, lance
l'écriture d'une nouvelle ligne. Pas de soucis de ce coté la, mais la
ligne s'écrit d'un coup et d'un seul.
Mon soucis est donc que je ne sais pas comment faire pour que les
lettres s'affichent une à une.

J'ai essayé en mettant un nouveau timer dans le 1er, mais ca ne marche
pas. J'ai aussi essayé de faire une boucle simple, mais qui se réalise
1000000 de fois pour laisser passer du temps, mais ca ne marche pas
non plus. Et j'ai aussi essayé la fonction rest(), mais le problème
c'est que cette fonction bloque tout le programme, et comme c'est un
screensaver, je n'ai plus d'interruption par la souris.

Le soucis vient surtout de la en fait, pouvoir faire attendre des
évenements, les lancer en tache de fond, en ayant toujours
l'interruption par la souris. Dans tout ce que j'ai essayé, ce n'était
pas le cas.

On m'a dit que ca pouvait éventuellement se faire avec les apis win32,
mais je ne sais pas comment ca marche.

Si quelqu'un connait une solution pas trop compliqué, merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
nico
Le #19254931
wrote:

Le soucis vient surtout de la en fait, pouvoir faire attendre des
évenements, les lancer en tache de fond, en ayant toujours
l'interruption par la souris. Dans tout ce que j'ai essayé, ce n'était
pas le cas.




Tu peux mettre les traitements dans des threads ( CreateThread() )
et Sleep() à l'intérieur pour les attentes
Publicité
Poster une réponse
Anonyme