iv
TABLE DES MATI `
ERES
2.5.3 Gestion du HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.5.4 Apparence modifiable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Le positionnement des composants 39
3.1 Principe des gestionnaires de placement . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2 Le positionnement absolu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3 Le gestionnaire FlowLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Le gestionnaire GridLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.5 Le gestionnaire BorderLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.6 Le gestionnaire GridBagLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.6.1 La classe GridBagConstraints . . . . . . . . . . . . . . . . . . . . . . . 44
3.6.2 Positionnement sur la grille . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.6.3 Remplissage des cellules . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.6.4 Nombre de cases occup´ees . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.6.5 Poids des composants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4 Construction d’une interface graphique 49
4.1 Une interface simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.1.1 Pr´esentation de l’interface voulue . . . . . . . . . . . . . . . . . . . . . . . 49
4.1.2 Identification des diff´erents composants . . . . . . . . . . . . . . . . . . . . 49
4.1.3 Choix du/des gestionnaires de placement . . . . . . . . . . . . . . . . . . . 49
4.1.4 Programme obtenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Une interface plus compl`ete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.1 Pr´esentation de l’interface voulue . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.2 Identification des diff´erents composants . . . . . . . . . . . . . . . . . . . . 52
4.2.3 Choix du/des gestionnaires de placement . . . . . . . . . . . . . . . . . . . 52
4.2.4 Programme obtenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5 Les ´
ev´
enements et leur gestion 59
5.1 Principe des ´ev´enements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.1 Les ´ev´enements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.2 La source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.3 Les auditeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.4 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.2 Gestion des ´ev´enements dans Swing . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.2.1 Principes de la gestion d’´ev´enements dans Swing . . . . . . . . . . . . . . . 61
5.2.2 Les diff´erents ´ev´enements . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.2.3 Gestion des ´ev´enements par la classe graphique . . . . . . . . . . . . . . . . 62
5.2.4 Gestion des ´ev´enements par des classes d´edi´ees . . . . . . . . . . . . . . . . 64
5.2.5 Gestion des ´ev´enements par des classes membres internes . . . . . . . . . . 65
5.2.6 Gestion des ´ev´enements par des classes membres internes anonymes . . . . . 66
5.2.7 Gestion des ´ev´enements par des classes d’adaptations (ou adaptateurs factices) 68
6 La construction d’applications graphiques 73
6.1 Principes et vocabulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.2 Les ´el´ements mod`ele, vue et contrˆoleur ne sont pas distincts . . . . . . . . . . . . . 75
6.3 S´eparation des ´el´ements vue, contrˆoleur et mod`ele . . . . . . . . . . . . . . . . . . . 77