next up previous contents index
Next: 33 Les composants Swing Up: Java: JFC Previous: Java: JFC

Subsections

32 Java Foundation Class

L'objectif des JFC (Java Foundation Class ) est de fournir, à l'image des MFC (Microsoft Foundation classes ) un ensemble de classes de plus haut niveau que les classes de AWT .

Pour être précis, les Java Foundation Classes sont constitués de


Java Foundation Class

32.1 Swing

Les packages Swing sont intégrés à la version 1.2 de JDK et se nomment java.awt.swing, java.awt.swing.event, etc.

Cette partie du document est conforme à la version Java 1.2beta3

Comme JFC s'inspire des IFC, les widgets JFC-Swing ont généralement un air de famille avec les widgets IFC . Les widgets AWT et les widgets de JFC-Swing coexistent dans JDK . Le nom des composants Swing commence par la lettre J (JButton, JLabel, etc.) On retrouve donc dans les Swing et des concepts identiques que ceux rencontrés dans AWT et des widgets et des fonctionnalités supplémentaires.

Par contre, contrairement aux composants de AWT , les composants Swing n'implante le modèle évènementiel de jdk 1.1 et quelques autres fonctionnalités propres à Swing

Rappellons que les objets de la classe java.awt.Container de AWT sont conçus pour pouvoir contenir des composants graphiques (java.awt.Component). Tous les composants Swing sont dérivées de la classe JComponent. Cette dernière est une classe dérivée de la classe java.awt.component. Autrement dit, n'importe quel composant Swing peut contenir un ou plusieurs autres composants AWT ou Swing . Cette approche permet de définir des composants beaucoup plus riches (souvenons nous qu'un bouton AWT ne pouvait contenir une image !!!)

32.1.1 Les packages

JFC-Swing est composé des packages suivants:

32.1.2 Look and Feel

Sauf contre indication, le ``look'' des widgets sont prédéfinis et correspondnet au ``look'' Java . Il est possible de donner un look plus personnalisé en fonction de la plate forme utilisée. A cette fin, Swing définit la classe UIManager qui se charge de configuration du ``look'' des widgets.

32.2 Les composants Swing

Swing possède plusieurs types de widgets:


JButton


JLabel


JRadioButton


JCheckbox


JComboBox


JList


JTree


JMenu


JProgressBar


JScrollPane


JSlider


JTable


JToolBar


JTooltip


JTabs

32.3 L'architecture Model-View-Controller

32.3.1 Introduction

Swing ne se contente pas de définir des composants et fonctionnalités supplémentaires par rapport à AWT ; elle introduit une approche nouvelle de la programmation graphique : l'architecture Model-View-Controller (MVC) qui permet une meilleure gestion de

Une interface utilisateur obéissant à l'architecture MVC est composé de trois type d'objets qui communiquent entre-elles:


Architecture Model/View/Controller

Cette approche permet

Cette approche n'est pas forcément lié à la programmation des interfaces graphiques même si elle s'applique parfaitement à de telles applications.

32.3.2 MVC et JFC

La modèle Swing effectue une adaptation du modèle MVC dans lequel la vue et le contrôleur sont combinés en un même objet appelé delegate . Cette adaptation est relativement classique et permet de simplifier la communication entre la vue et le contrôleur.


Composant graphique JFC

Voici pour éclairer le modèle MVC, l'exemple d'un bouton.

Le modèle

Le modèle d'un bouton est illustré par l'interface ButtonModel qui est implantée par la classe DefaultButtonModel. Ce modèle schématise l'état interne d'un bouton et ses comportements:

Le contrôleur et la vue graphique

Le comportement de la vue et du contrôler est défini par l'interface ButtonUI. Les classes qui implante cette interface sont responsables de la représentation visuelle et de la gestion des évènements:

33.0.2 Un exemple

 

A TERMINER

32.4 Les composants Swing

32.5 Créer une application Swing

Bien des points que nous vennons d'évoquer peuvent être ignorés lorsqu'on définit une application Swing de base. Il y a en fait plusieurs manières d'aborder la création d'une application Swing :

32.5.1 Application standard

32.5.2 Application MVC

32.5.3 Application complexe


next up previous contents index
Next: 33 Les composants Swing Up: Java: JFC Previous: Java: JFC
Touraivane
6/12/1998