événements

publicité
Les interfaces de gestion d’événements
(la suite)
Les interfaces de gestion d’événements
Rappel :
– Pour gérer des événements, il faut implémenter des
interfaces écouteur (listener)
– Chaque interface définit des méthodes à écrire si
l’événement se produit
Les interfaces de gestion d’événements
Rappel :
– Les écouteurs de bas niveau sont ceux qui
permettent de gérer des événements système
(souris, clavier, mémoire, ...)
– Les écouteurs de haut niveau représentent une action
de l’utilisateur qui a un sens. Cela s’avère souvent
être une combinaison d’évènements de bas niveau.
Les interfaces de gestion d’événements
Toutes les méthodes suivantes reçoivent un objet de la
classe WindowEvent en paramètre
– WindowListener
• windowOpened, windowClosed,
• windowActivated, windowDeactivated,
• windowIconified, windowDeiconified
Les interfaces de gestion d’événements
• Suite
– WindowFocusListener
• windowGainedFocus, windowLostFocus
– WindowsStateListener
• windowStatedChanged
Les interfaces de gestion d’événements
À l’exception de mouseWheelMoved, toutes Les
méthodes suivantes reçoivent un objet de la classe
MouseEvent en paramètre
– MouseListener
•
•
•
•
•
mouseClicked,
mousePressed,
mouseReleased,
mouseEntered,
mouseExited
Les interfaces de gestion d’événements
• Suite
– MouseMotionListener
• mouseMoved,
• mouseDragged
– MouseWheelListener
• mouseWheelMoved (MouseWheelEvent)
Les interfaces de gestion d’événements
Toutes Les méthodes suivantes reçoivent un objet
de la classe KeyEvent en paramètre
– KeyListener
• keyTyped, keyPressed, keyReleased
En résumé, il faut connaître les interfaces
écouteur associées à un composant.
Les interfaces de gestion d’événements
• Il existe des classes qui implémentent les
interfaces de gestion d’événements. On appelle
ces classes des adapteurs.
– MouseAdapter
– KeyAdapter
– ...
• Ces classes évitent d’avoir à écrire les
méthodes qui ne servent pas.
Les interfaces de gestion d’événements
• Exemple d’adapteur
public class MouseAdapter{
public void mousePressed(MouseEvent arg0) {}
public void mouseEntered(MouseEvent arg0) {}
public void mouseExited(MouseEvent arg0) {}
public void mouseClicked(MouseEvent arg0) {}
public void mouseReleased(MouseEvent arg0) {}
}
Gestionnaires de disposition
(LayoutManager)
Gestionnaires de disposition
(LayoutManager)
• La disposition des composants dans un
GUI n’est pas une mince tâche
• Deux façons de disposer :
– Manuellement (déconseillé)
– En utilisant les gestionnaires de disposition
• Les différents gestionnaires sont expliqués
à : java.sun.com/docs/books/tutorial/uiswing/layout/visual.html
Gestionnaires de disposition
(LayoutManager)
• Quelques points importants :
– La disposition par défaut de contentPane est BorderLayout
– La disposition par défaut d’un JPanel est FlowLayout
– Si on ajoute un composant dans un cadre après que la fenêtre soit
visible, il faut aviser avec validate() ou pack().
– Un composant ne peut être que dans un seul conteneur à la fois.
Exemple de composants Swing
• Vous pouvez voir des exemples
d’utilisation de tous les composants Swing
à:
http://java.sun.com/docs/books/tutorial/uiswi
ng/components/
Exemple
Téléchargement