Professional Documents
Culture Documents
Exercice 1 :
Partie I
1) Nous allons dans une 1ère partie de l’exercice réaliser notre propre horloge qui n’est
pas celle du système. Pour ce faire nous allons créer une nouvelle application « Jeu »
qui contient une classe Horloge.
2) La classe horloge a deux attributs minute et seconde initialisés dans le constructeur
Elle a aussi une méthode
- Incrémenter() : qui permet d’incrémenter les minutes et les secondes
- seDessiner(Graphics g) : qui prend en paramètre un objet graphics et dessine la
valeur des minutes et des secondes sous forme de chaînes de caractères.
3) Nous déclarons aussi un panneau PanneauHorloge qui crée une instance de la classe
Horloge et redéfinie la méthode paintComponent() en appelant la méthode se dessiner
de l’Horloge.
4) Le cadre principal crée une instance de PanneauHorloge et invoque la méthode
repaint() du panneau lors de l’initialisation de l’application. Exécuter ce programme.
Partie II
Nous désirons maintenant rendre l’horloge active. Pour ce faire nous allons créer un
processus qui gère l’incrémentation de la valeur de l’horloge et qui affiche le résultat dans
le panneau.
1) Pour ce faire, on crée une instance d’un objet dit Thread dans le cadre principal et qui
représente un processus en java comme suit :
Thread T=new Thread(this)
Nous désirons maintenant déplacer un objet en même temps que l’horloge avance, pour
obtenir le résultat suivant :
1) Personnage qui possède un objet ImageIcon qui représente le personnage. Cette classe
possède deux méthodes :
- seDeplacer() : qui change les coordonnées du personnage
- seDessiner(Graphics g, ImageObserver o) : cette méthode permet de dessiner
l’objet dans le contexte de l’objet qui l’observe « ImageObserver ». Cette méthode
invoque la méthode drawImage() de l’objet Graphics.
2) Comme nous avons fait pour l’horloge, nous allons créer une instance de l’objet
Personnage dans le panneau PanneauHorloge et dans la méthode paintComponent(),
nous allons appeler la méthode seDessiner() du personnage.
3) La méthode seDeplacer() de l’objet Personnage doit être appelée dans la méthode
run() du cadre principal après la méthode Horloge. Incrémenter().