Un économiseur de fenêtre

           

Cet exercice est à la fois un exercice sur les threads et sur la gestion des événements dans une fenêtre.

Il s'agit de créer une classe, que l'on nommera Economiseur, dont les instances pourront servir d'économiseur pour une fenêtre de type Frame.

Plus précisément, supposons que dans le constructeur d'une classe appelée par exemple Fenetre étendant la classe JFrame, on ait inclus l'instruction :

new Economiseur(this, 20);
alors, si la fenêtre de nom fenetre est une instance de cette classe, on attend le phénomène décrit ci-après ; lorsque pendant 20 secondes consécutives, on ne provoque aucun événement dans fenetre ou un de ses composants (aucune utilisation de la souris ou de touche), la fenêtre est automatiquement recouverte d'une fenêtre ayant les mêmes dimensions, mais noir ou presque noir, servant donc d'économiseur d'écran sur la surface de fenetre. Il serait souhaitable de concevoir un dessin simple animé dans cet économiseur. Si l'on passe avec la souris sur l'économiseur, celui disparaît et on retrouve la fenêtre d'origine.

On définira :

On pourra essayer l'économiseur sur n'importe quel "JFrame" .

Vous pouvez disposer d'un corrigé