Menus, toolbar, action et modèle

Exercice 1 - Les Menus

Dans une nouvelle fenêtre JFrame, nous allons ajouter des menus.

  1. Créer une barre de menu (JMenubar).
  2. Ajouter un menu File (JMenu).
  3. Ajouter deux items Open et Save (des JMenuItem) au menu File (à l'aide de la méthode add()).
  4. Puis ajouter le menu File à la barre de menu.
  5. Enfin, ajouter la barre de menu à la fenêtre (setJMenuBar()).

Dans un second temps, ajouter un autre menu contenant des boutons à cocher (JCheckBoxMenuItem). Puis grouper-les (souvenez-vous des ButtonGroup).

Exercice 2 - La barre d'outils

Dans une nouvelle fenêtre, nous allons ajouter une barre d'outil. Pour cela, nous allons auparavant créer les boutons contenant des images pour mettre ceux-ci à l'intérieur de la barre d'outils.

Dans cet exercice, les boutons n'effectueront aucune action.

Exercice 3 - Action ... Couper

Le but de cet exercice est de manipuler une serie d'actions. Les actions sont des objets implémentant l'interface Action (qui hérite de ActionListener) et permettant de regouper au sein d'un même objet, le traitement, l'icône, les racourcis clavier, les bulles d'infos, etc.
Il existe de plus la classe AbstractAction qui prédéfinie un mécanisme de listener permettant d'associer une action à plusieurs composants swing (boutons, menus).

  1. Créer une liste (JList) contenant l'ensemble des arguments de la ligne de commande, un menu et une toolbar.
  2. Créer une action (New) permettant de rajouter une chaîne de caractères à la liste en demandant à l'utilisateur de saisir la chaîne. L'action pourra être déclenchée soit par l'intermédaire d'un menu soit en cliquant sur l'icône de la toolbar.
    Utiliser pour cela la classe JOptionPane qui permet d'afficher une fenêtre de demande à l'utilisateur et une classe héritant de la classe AbstractAction correspondant à l'action (New).
  3. Créer une action (Delete) qui permet de détruire la chaîne sélectionnée dans la JList.
  4. Faire en sorte que l'action (Delete) soit grisé si aucune chaîne n'est sélectionnée.

Exercice 4 - À la maison ...

Créer une application (le switcher) contenant deux listes verticales placées à gauche et à droite d'une série de boutons verticaux. Le premier bouton ("-->") permettra de prendre l'élément sélectionné de la première liste pour l'insérer dans la seonde liste. Le second bouton ("<---") fera exactement le contraire.