Professional Documents
Culture Documents
L’interface graphique d’une application Java La plus petite application avec IUG
Frame,
• JFC (Java Foundation Classes) • c’est aussi la partie constante, présente dans toutes les applications
Panel,
− AWT (Abstract Windowing Toolkit) Button, import javax.swing.JFrame;
o première version, rôle important dans le succès de Java etc.
public class Simple1 {
o toujours présente : événements, gestionnaires de disposition
o faite de composants lourds, appariés avec des composants natifs public static void main(String[] args) {
JFrame, JFrame cadre = new JFrame("Le début de la vie");
− Swing cadre.setSize(300, 200);
JPanel,
o composants beaucoup plus nombreux et complexes cadre.setVisible(true);
JButton,
o faite de composants légers, « 100% pur Java » }
etc. }
o attention : tous les composants Swing ne sont pas supportés par
les vieilles versions de la JVM (attention aux navigateurs web !)
− ici nous allons étudier
• attention, la case de fermeture
o les composants de Swing
ne fonctionne pas
o le système des événements de AWT
o les gestionnaires de disposition (layout manager) de AWT
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 1 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 3
Container contient d’autres composants ( add(..) public static void main(String[] args) {
JFrame cadre = new JFrame("Le début de la vie...");
gère leur placement setLayout(…) cadre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Window existe seul sur un écran setVisible(…) cadre.setSize(300, 200);
cadre.setVisible(true);
allocation/restitution de ressources setOwner(…) }
}
Frame permanente (caractérise l’application)
porte une barre de menus
• maintenant, la case de fermeture
Dialog fenêtres temporaires, modales (bloquantes) ou non fonctionne
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 2 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 4
Interfaces graphiques Interfaces graphiques
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 5 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 7
source auditeur
public class Simple4 extends JFrame {
public Simple4() {
• les événements souris sont notifiés par …
la source connaît la liste des auditeurs
super("Le début de la vie... (5)"); pour chaque catégorie d’événements
void mousePressed(MouseEvent e)
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
void mouseReleased(MouseEvent e)
this.setSize(300, 200); interface
void mouseClicked(MouseEvent e)
JLabel etiquette = new JLabel("Bonjour à tous");
void mouseEntered(MouseEvent e) MouseListener
void mouseExited(MouseEvent e)
this.getContentPane().add(etiquette);
}
• un auditeur d’événements souris « s’enregistre » par
public static void main(String[] args) {
JFrame cadre = new Simple4();
ici
void addMouseListener(MouseListener l)
cadre.setVisible(true);
} ou là la présence de cette méthode dans un objet révèle
}
qu’il peut être source de tels événements
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 6 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 8
Interfaces graphiques Interfaces graphiques
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 13 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 15
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 14 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 16
Interfaces graphiques Interfaces graphiques
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 17 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 19
SOUTH
Cours sur les IHM 2005.doc © H. Garreta, 2005 page 18 Cours sur les IHM 2005.doc © H. Garreta, 2005 page 20
Interfaces graphiques
NORTH
EAST
CENTER
SOUTH
SOUTH
Interfaces graphiques
Grid
Grid
Flow
Flow