Swing :: Listener
Introduction
Les différents listeners :
- ActionListener
- KeyListener
- MouseListener
- MouseMotionListener
- MouseWheelListener
- TextListener
- FocusListener
- ContainerListener
- ComponentListener
- WindowListener
- UndoableListener
- DocumentListener
- TreeModelListener
- TreeSelectionListener
- TreeExpansionListener
ActionListener
action sur un bouton
public class ActionListener
{
public void actionPerformed (ActionEvent ev)
{
System.exit(0);
}
}
KeyListener
Action sur une touche (3 méthodes)
public class KeyListener
{
public void KeyReleased (KeyEvent ev)
{
if (ev.getKeyCode==27)
{
System.exit(0);
}
}
public void KeyTyped (KeyEvent ev)
{
//...
}
public void KeyPressed(KeyEvent ev)
{
//...
}
}
MouseListener
Action sur la souris (5 méthodes)
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
import javax.swing.SwingUtilities;
public class MouseListener{
public void mousePressed(MouseEvent mouseEvent) {
if ( SwingUtilities.isLeftMouseButton(mouseEvent) ) {
/** Bouton GAUCHE */
JOptionPane.showMessageDialog(new JOptionPane(),"Click Gauche","Ma souris",JOptionPane.INFORMATION_MESSAGE);
} else if(SwingUtilities.isMiddleMouseButton(mouseEvent) ) {
/** Bouton du MILIEU */
} else if(SwingUtilities.isRightMouseButton(mouseEvent)) {
/** Bouton DROIT */
}
}
public void mouseReleased(MouseEvent e) {
//...
}
public void mouseEntered(MouseEvent e) {
//...
}
public void mouseExited(MouseEvent e) {
//...
}
public void mouseClicked(MouseEvent e) {
}
}
MouseMotionListener
Listener sur les mouvements de la souris
import java.awt.event.MouseMotionListener;
import java.awt.event.MouseEvent;
public class MouseMotionListener{
public void mouseDragged(MouseEvent e) {
}
public void mouseMoved(MouseEvent e) {
}
}
MouseWheelListener
Listener sur les mouvements de la roulette de la souris
import java.awt.event.MouseWheelListener;
import java.awt.event.MouseWheelEvent;
public class MonMouseWheelListener implements MouseWheelListener{
public void mouseWheelMoved(MouseWheelEvent e) {
}
}
TextListener
Action sur le texte
public class TextListener{
public void TextValueChanged(TextEvent ev) {
}
}
FocusListener
Action sur le focus
public class FocusListener{
public void focusGained(FocusEvent ev) {
}
public void focusLost(FocusEvent ev) {
//...
}
}
ContainerListener
Action sur le Container
public class ContainerListener{
public void componentAdded(ContainerEvent ev) {
}
public void componentRemoved(ContainerEvent ev) {
//...
}
}
ComponentListener
Action sur les composants
public class ActionComponent implements ComponentListener{
public void componentHidden(ComponentEvent ev) {
}
public void componentMoved(ComponentEvent ev) {
//...
}
public void componentResized(ComponentEvent ev) {
//...
}
public void componentShown(ComponentEvent ev) {
//...
}
}
WindowListener
Action sur les fenetre
public class ActionWindow implements WindowListener{
public void windowActivated(WindowEvent ev) {
//...
}
public void windowClosed(WindowEvent ev) {
//...
}
public void windowClosing(WindowEvent ev) {
//...
}
public void windowDeactivated(WindowEvent ev) {
//...
}
public void window Deiconified(WindowEvent ev) {
//...
}
public void windowIconified(WindowEvent ev) {
//...
}
public void windowOpened(WindowEvent ev) {
//...
}
}
UndoableListener
Le undo listener apparait lorsqu'une opération peut être annulée.Typiquement,
sur les éditeurs de texte pour supprimer,ajouter ou copier des caractères.On implémente les commandes undo et redo.
document.addUndoableEditListener(new MyUndoableEditListener());
...
protected class MyUndoableEditListener implements UndoableEditListener {
public void undoableEditHappened(UndoableEditEvent e) {
//Remember the edit and update the menus
undo.addEdit(e.getEdit());
undoAction.updateUndoState();
redoAction.updateRedoState();
}
}
DocumentListener
class MonDocumentListener implements DocuementListener {
public void changedUpadte(DocumentEvent e) {
//...
}
public void removeUpdate(DocumentEvent e) {
//...
}
public void insertUpdate(DocumentEvent e) {
//...
}
}
TreeModelListener
import javax.swing.event.TreeModelListener;
import javax.swing.event.TreeModelEvent;
public class TreeModelListener{
public void treeStructureChanged(TreeModelEvent e) {
}
public void treeNodesRemoved(TreeModelEvent e) {
}
public void treeNodesInserted(TreeModelEvent e) {
}
public void treeNodesChanged(TreeModelEvent e) {
}
}
TreeSelectionListener
import javax.swing.event.TreeSelectionListener;
import javax.swing.event.TreeSelectionEvent;
public class TreeSelectionListener{
public void valueChanged(TreeSelectionEvent e) {
System.out.print("TreeSelectionListener : "+e.getPath().toString());
}
}
TreeExpansionListener
Action sur ouverture/Fermeture de noeud
import javax.swing.event.TreeExpansionListener;
import javax.swing.event.TreeExpansionEvent;
public class MonTreeExpansionListener implements TreeExpansionListener {
public void treeCollapsed(TreeExpansionEvent e) {
}
public void treeExpanded(TreeExpansionEvent e){
}
}