Introduction à Java/Swing
Modèles de données

L'objectif de cet exercice est d'exploiter les modèles de Java/Swing.

Partage de modèle
Ecrire un programme qui crée deux potentiomètres. Manipuler les deux potentiomètres. Que se passe-t-il ?
Chercher dans la documentation de la classe JSlider un moyen de spécifier le modèle de données associé à un potentiomètre.
Créer un modèle de données adéquat et l'attacher aux deux potentiomètres. Manipuler à nouveau ceux-ci. Que se passe-t-il ?
Faire en sorte qu'un objet puisse être prévenu de toutes les modifications effectuées sur le modèle, indépendamment du nombre de widgets qui lui sont connectés.
Modèle personnalisé
Ecrire un programme affichant une zone de texte de type JTextArea.
Chercher dans la documentation de la classe JTextArea un moyen pour spécifier le modèle de données utilisé.
Créer un modèle de données qui transforme le texte inséré par l'utilisateur en changeant les majuscules en minuscules.
Ajouter un JTextPane. Faire en sorte que ce widget utilise le même modèle que le JTextArea.
A l'aide de la classe SimpleAttributeSet et de la méthode setCharacterAttributes de la classe DefaultStyledDocument, changer la couleur du texte inséré s'il s'agit de plus d'un caractère. Copier/coller un mot dans le JTextArea ou dans le JTextPane
Synchronisation de composants hétérogènes via un modèle partagé
Implémenter un modèle utilisable à la fois par un objet JSlider et un objet JTextField. Le but est de pouvoir connecter ces deux types de widgets sur le modèle afin de synchroniser leurs vues sans utiliser d'écouteurs spécifiques.