TP2 - SoC
Transcription
TP2 - SoC
Programmation orientée objet - Langage Java TP2 - Interface graphique avec Swing Exercice 1 Le but de cet exercice est de réaliser un convertisseur graphique Euros/Dollars. Avec les fonctionnalités suivantes : • Si l’utilisateur entre une valeur dans la case euros et valide (touche entrée) alors le montant correspondant en dollars est calculé et affiché dans la case correspondante, de plus une flèche => est affichée pour indiquer le sens de la conversion. • De même avec la case euros (et une flèche <=). • L’utilisateur doit aussi pouvoir changer le taux de change à l’aide des flèches d’un bouton JSpinner (voir image ci-dessous). • Enfin, si l’utilisateur ferme la fenêtre ou clique sur quitter l’exécution du programme se termine. • Les saisies erronées seront traitées par des exceptions. Question 1 Commencez par écrire une classe Converter dont le constructeur crée puis affiche l’interface graphique. Écrivez aussi une méthode main créant une instance de Converter. Question 2 Écrivez les méthodes de Converter suivantes : • public void toDollars (double s) qui convertit s de dollars en euros et met à jour l’affichage, • public void toEuros (double s) qui convertit s d’euros en dollars et met à jour l’affichage, • public void setTaux(double t) qui met à jour le champ privé taux de Converter avec le nouveau taux de change t. Question 3 Utilisez un écouteur anonyme et associez le au bouton quitter. Lors de son appel il doit terminer l’application. Question 4 On veut associer la validation d’un montant dans un des JTextField à l’appel d’un écouteur anonymee qui lit la valeur saisie et appeler la méthode toEuros/toDollars correspondante. Créez les classes anonymes qui implantent l’interface ActionListener. Quelle(s) méthode(s) doivent-elles définir ? Question 5 De façon similaire écrivez une classe anonyme associée à l’action de changement de taux. Attention, le JSpinner est particulier et c’est à son modèle que l’on doit associer l’événement. Polytech’Paris-UPMC Électronique Informatique - 4e année 1 Question 6 La classe JOptionPane propose des méthodes statiques permettant de créer des boı̂tes de dialogue. Utilisez la méthode showMessageDialog pour afficher les messages provenant des exceptions. Exercice 2 Reprendre l’exercice du TP1 sur les animaux. Question 1 Modifier votre code pour gérer la ménagerie de manière dynamique. Question 2 Proposer une solution pour que chaque animal savant puisse jouer un tour différent. Question 3 Proposer une interface graphique pour votre programme. Polytech’Paris-UPMC Électronique Informatique - 4e année 2