Haute école spécialisée bernoise
Haute école technique et informatique, HTI
Section Electricité et système de communication
Laboratoire de l’informatique technique
Introduction à la
programmation Java
Programmation GUI & Traitement des évènements
Les applets
Les Thread
Les exceptions
Les entrées et les sorties
2008, HTI Bienne
E. FIROUZI
Nom de fichier : Manuscrit_Introduction_Java_Partie_2
Crée le: 28. avril 2015
Auteur: E. FIROUZI
Version: 2.0
Tables des matières
Page 2
Table des matières
4 Programmation GUI & Traitement des évènements 4
4.1 Structure des applications GUI 4
4.1.1 Hiérarchie des fenêtres 4
4.1.2 Hiérarchie des classes des composants GUI 5
4.1.3 Les éléments de contrôle élémentaires 6
4.2.1 Positionnement des composants 7
4.2 Le gestionnaire de position 7
4.2.1 Positionnement des composants 7
4.2.2 BorderLayout 7
4.2.3 FlowLayout 9
4.2.4 GridLayout 10
4.2.5 GridBagLayout 11
4.2.6 CardLayout 13
4.2.7 Les imbrications de gestionnaire de position 14
4.3 Le traitement des évènement 16
4.3.1 Le modèle d’évènement par délégation du paquet AWT 1.1 16
4.3.2 Les types d’évènements 18
4.3.3 Les Sources d’évènement 19
4.3.4 Les observateurs d’évènement 19
4.3.5 Les adaptateurs 20
4.4 Les éléments de contrôle élémentaire 21
4.4.1 La surface de dessin : Canvas 21
4.4.2 Les boutons 24
4.4.3 Les listes à choix unique 26
4.4.4 Les cases à cocher 27
4.4.6 Les zones de texte 29
4.4.7 Les barres de défilement 31
4.4.8 Les menus dans Java 33
5 Les applets 36
5.1 Introduction 36
5.1.1 Les pages HTML 36
5.1.2 Exemple d’applet 36
5.2 Mode de fonctionnement des applets 38
5.2.1 Stockage des applets 40
5.2.2 Sécurité des applet 40
5.3 Les fonctions PARAM 41
5.3.1 Exemple d’applet pour convertir des francs suisses en monnaies étrangères 42
5.4 Les sons et les images 44
5.4.1 Les sons 44
5.4.2 Les images 45
6 Les Thread 48
7 Les exceptions 48
7.1 Introduction 51
7.1.1 Exemple de code 51
7.2 Principe de fonctionnement 52
7.2.1 Une implémentation possible du traitement d’exception 52
Tables des matières
Page 3
7.3 L’avantage des traitements des exceptions de Java 52
7.4 Les classes et les exceptions 52
7.4.1 Exemple de code 53
8 Les entrées et les sorties 55
8.1 Les entrées en Java 55
8.1.1 Les entrées orientés byte 55
8.1.2 Les entrées orientés caractères 56
8.1.3 L’entrée standard 58
8.2 Les sorties en Java 59
8.2.1 Les sorties avec les flux orientés bytes 59
8.2.2 Les sorties avec les flux orientés caractères 60
8.2.3 La sortie standard 61
8.3 Exemple d’application 61
8.3.1 Traitement des données orienté byte 61
8.3.2 Traitement des données orienté bloque 62
8.3.3 Traitement des données en format Internet 64
4 Programmation GUI & Traitement des évènements
Page 4
4 Programmation GUI & Traitement des
évènements
Le JDK (Java Development Toolkit) contient des nombreuses classes pour la programmation des interfaces
d’utilisateur graphique, abrégé en anglais par GUI (Graphical User Interface). Ces classes sont mis a disposition
dans le paquet « java.awt » (Abstract Windows Toolkit = AWT). Elles permettent de dessiner des objets
graphiques et de programmer l’interaction utilisateur - application, dans le cadre des applets mais également des
applications indépendantes, qui peuvent être exécutées sous différents systèmes d’exploitations.
JDK met à disposition tous les éléments de contrôle standards pour programmer les interfaces
d’utilisateur graphique : les menus, la sourie, les éléments de contrôle et de dialogue. Toutefois, les applications,
qui sont imbriqués dans des pages web, ne devraient pas pouvoir accéder aux données locales. Par conséquent,
les applet ne contiennent pas les éléments de dialogue, qui permettent d’afficher le contenu des répertoires ou de
choisir des fichiers.
Dans la perspective de portabilité des applications, le concept du « gestionnaire de position » (layout manager) a
également été introduit dans Java, afin de pouvoir créer des interfaces d’utilisateur graphique avec des tailles
variables.
4.1 Structure des applications GUI
Avec Java 2, il est également possible de programmer les applications GUI avec le système de classes
« Swing. ». La structure des composants élémentaires de ce paquet est identique à celui d’AWT. Les exemples
des chapitres suivants ont été codés avec le système AWT. Les représentations Swing, associées à ces exemples,
se trouvent dans le livre de Jobst.
4.1.1 Hiérarchie des fenêtres
Les applications graphiques sont toujours composées d’une fenêtre principale. Dans la philosophie Java, cette
fenêtre est un « Container ». Chaque Container peut contenir d’autres Container sous forme de
composant.
La classe « Panel » est le Container le plus simple d’AWT. Il constitue la base pour les « Applet ». Mais
il peut également servir au montage des éléments de contrôle. Dans ce cas il sera ajouté comme un composant
standard dans une autre fenêtre.
La classe « Window » représente une fenêtre indépendante. Une fenêtre est un morceau rectangulaire sur l’écran,
sans titre et sans cadre. La classe « Frame » est une fenêtre avec un titre et un cadre. Frame peut contenir une
barre de menu et est mise à disposition pour la programmation des applications GUI.
Exemple de code
import java.awt.*;
public class MyFrame extends Frame {
MyFrame(String Title) {
super(Title);
add(new Button("AWT Button"));
setSize(300, 100);
setVisible(true);
}
4 Programmation GUI & Traitement des évènements
Page 5
public static void main(String[] args){
new MyFrame("Java application with AWT");
}
}
Instruction
Dans l’exemple ci-dessus, la classe « MyFrame » découle de la super classe Frame. Cela s’exprime avec :
public class MyFrame extends Frame
Les propriétés de la fenêtre sont définies dans le constructeur de MyFrame. La fenêtre reçoit un titre avec l’appel
du constructeur de la super classe Frame. Les différents composants de l’interface d’utilisateur doivent être
générés et ajoutés au Container avec la méthode :
public void add(Component oneComponent)
Dans cet exemple, le bouton « AWT Button » est ainsi placé dans la fenêtre principale. Finalement, la taille et
la visibilité de la fenêtre sont définies respectivement avec les méthodes « setSize » et « setVisible ».
Un objet de la classe « MyFrame » est généré dans la méthode principale « main ». La fenêtre apparaît ainsi sur
l’écran.
Exemple d’affichage
4.1.2 Hiérarchie des classes des composants GUI
Les différents composants de l’interface d’utilisateur sont représentés à l’aide d’une hiérarchie de classes, dont la
racine est la classe abstraite « java.awt.Component ». Toutes les classes AWT possèdent ainsi les attributs
et les méthodes de « Component ». Ces derniers permettent de déterminer l’aspect des composants et de
programmer le traitement des évènements à l’aide des méthodes suivantes :
Définition de la taille et de la position : getSize, getX, getY, setSize, setLocation etc.
Définition et enquête sur les propriétés graphiques : getForground, setBackground, setFont,
getCursor etc.
Affichage des composants : setVisible, paint, rePaint etc.
Traitement des évènements.
La classe abstraite « Container » est le sou classe la plus important de Component. Container sert
essentiellement à ajouter les éléments de contrôle dans les fenêtres et les dialogues. Pour cela, elle met à
disposition les méthodes suivantes :
Ajouter un composant au Container : add
Enlever un composant du Container : remove, removeAll etc.
Définition et enquête sur le gestionnaire de position : setLayout, getLayout, doLayout etc.
La figure suivante montre la hiérarchie des classes AWT :
1 / 67 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !