You are on page 1of 11

Management of events

Events

Semantic events

Low-level events

Adapter classes

Anonymous classes
2022
The event management model

 Sursă de evenimente: any graphical component.

 Eveniment: object launched by a source of events. The event is of a type


that specializes in the AWTEvent class.

 Ascultător: object that implements an event handler of a particular type.


The respective manager will indicate the actions that will be performed
when the event for which it was registered appears. The class must
implement an EventListener interface.
Event types
AWT/Swing
Component acti adjus- compo- contain focu ite windo
key mouse text
on tment nent er s m w
Component     X   X   X X    
Container     X X X   X X    
JButton X   X   X   X X    
JCheckBox     X   X X X X    
JCheckboxMe           X        
nuItem
JComboBox     X   X X X X    
JDialog     X X X   X X   X
JFrame     X X X   X X   X
JLabel     X   X   X X    
JList X   X   X X X X    
JMenuItem X                  
JPanel     X X X   X X    
JScrollbar   X X   X   X X    
JScrollPane     X X X   X X    
JTextArea     X   X   X X X  
JTextField X   X   X   X X X  
JWindow     X X X   X X   X
Semantic events
ActionEvent type event management
ItemEvent type event management
Low-level events
MouseEvent type event management
Gestiunea evenimentelor de tip KeyEvent

Un program care vizualizează o fereastră vidă pe ecran şi permite


utilizatorului să apese tastele săgeţi pentru a muta fereastra pe
ecranul monitorului.

În plus, utilizatorul poate folosi tastele C, S şi D pentru a plasa


fereastra în centrul, stânga sau dreapta ecranului.
Interfaţă Listener Clasă adapter Identificatori metode Evenimente generate de:
ActionListener nu există actionPerformed JButton, JList, JMenuItem,
JTextField
AdjustmentListener nu există adjustmentValueChange JScrollBar
d
ComponentListener ComponentAdapter componentHidden Component
componentMoved
componenResized
componentShown
ContainerListener ContainerAdapter componentAdded Container
componentRemoved
FocusListener FocusAdapter focusGained Component
focusLost
ItemListener nu există itemStateChanged JCheckBox, JComboBox,
JCheckboxMenuItem, JList
KeyListener KeyAdapter keyPressed Component
keyReleased
keyTyped
MouseListener MouseAdapter mouseClicked Component
mouseEntered
mouseExited
mousePressed
mouseReleased
MouseMotionListener MouseMotionAdapte mouseDragged Component
r mouseMoved
TextListener nu există textValueChanged JTextComponent
WindowListener WindowAdapter windowActivated JWindow
Anonymous classes and adapters

 Any multi-method xxxxListener interface has an xxxxAdapter class that


introduces an empty implementation for interface methods. The listening
object may belong to a subclass of the adapter that redefines only the
required methods.
 In practice, the listener object is part of an anonymous internal class
defined as the subclass of the listener.
import java.awt.*;
import java.awt.event.*;
public class FereastraCareSeInchide extends Frame{
public FereastraCareSeInchide(){
addWindowListener(new WindowAdapter(){//se creeaza un obiect al clasei interna /
/anonime, subclasa a lui WindowAdapter
public void windowClosing(WindowEvent e){//se redefineste met mostenita din
//WindowAdapter
System.exit(0);
} });
}
public static void main(String[] args){
Frame f = new FereastraCareSeInchide();

You might also like