SlideShare a Scribd company logo
1 of 34
Event Handling
Event handling
• It's now time to see how to get GUIs to
  respond to user actions like clicking on a
  button, typing text or dragging the mouse.

• These things are called events, and
  responding to them is called event handling.
Events Types




                                           No User
  User Interface                          Interface



•Pressing a button
                                     •Timer Expires
•Entering a charcter by
                                     •Counter Exceed value
keyboard
                                     •Software or hardware failure
•Selecting an item from
                                     •Operation is completed
list
Delegation Model
• Event Sources
• Events Listener
• Event Classes
Event Sources
• An object that generate an event
• A source must register listener in order to
  receive notification about specific type of
  event
Add Listener
Syntax:
public void add<Type>Listener(TypeListener obj)

• Keyboard: addKeyListener()
• Mouse :addMouseMotionListener()
Remove Listener
Syntax:
public void removeTypeListener(TypeListener el)

• removeKeyListener( ).
Event Listeners
• In Java, event handling is based on listeners.

• A listener is an object with a method which
  contains the code we want to run when an
  event happens
Major Requirements
• Registered to receive notifications about
  specific types of events.
• implement methods to receive and process
  these notifications.
Generate
                         Source                          Multicasting
   An Event
                                                         Unicasting




                    Receive Copy                 Receive Copy
                                   Listener
     Listeners


Process the event                  Process the event
& return                           & return
Event Classes
 SuperClass
                                  Available In
      EventObject Class                          Java.util



                  Subclass
SuperClass
                                  Available In
       AWTEvent Class                            Java.awt


                             Subclass


                 All AwtEvents
The recipe for event handling
• Write class MyListener which implements
  ActionListener (or whatever).
• Set up a GUI as before.
• Create a MyListener object.
• Associate the MyListener object with the
  component we want to respond to, using
  addActionListener
Event Class
                               • ActionListener


                         Interfaces



              Sources                             User       • Button is Pressed
• Button                      ActionEvent
• List                           Class                       • ListItem is DoubleClicked
• Menu Item                                                  • Menu item is Selected


                                      Method


                    • void actionPerformed(ActionEvent ae)
Textarea
• import java.applet.Applet;
• import java.awt.*;
• import java.awt.event.*;

• /*
• <Applet code=Textarea.class width="200"
  height="200"></Applet>
• <*/

  public class Textarea extends Applet implements
   ActionListener
• {
• TextArea t1;
• Button b1;
•
public void init()
{
          t1=new TextArea(" ",5,20);
         add(t1);

         b1=new Button("click here");
         add(b1);

         b1.addActionListener(this);
}


                         public void actionPerformed(ActionEvent e)
                          {
                            String msg="Welcome to java";
                                    if(e.getSource()==b1)
                                    {
                                       t1.insert(msg,0);
                                     }
                        }
List Box
List Box
• import java.applet.Applet;
• import java.awt.*;
• import java.awt.event.*;

•   /*
•   <Applet code=list.class width="200" height="200">
•   </Applet>
•   */

• public class list extends Applet implements ActionListener
• {
• List list1;
• TextField t1;
•
ListBox….

public void init()
                                          public void actionPerformed(ActionEvent e)
{
                                          {
  t1=new TextField(20);
                                            if(e.getSource()==list1)
         add(t1);
                                               t1.setText(((List)e.getSource()).getSelectedItem());
                                          }
         list1=new List(4);

         list1.add("item1");
         list1.add("item2");
         list1.add("item3");
         list1.add("item4");
         list1.add("item5");

         add(list1);
         list1.addActionListener(this);
         }
Event Class
                              • ItemListener


                        Interfaces



             Sources                             User      •   CheckBox is clicked
• CheckBox                    ItemEvent
• List                           Class                     •   List item is clicked
• Chioce                                                   •   Choice Selection is made
                                                           •   Checkable menu item
                                                               is selected or deselected.
                                     Method


                   • void itemStateChanged(ItemEvent ie)
Checkbox
CheckBox
•   import java.applet.Applet;
•   import java.awt.*;
•   import java.awt.Checkbox.*;
•   import java.awt.event.*;

• /*
• <Applet code=checkboxs.class height="200" width="200"></Applet>
• */

• public class checkboxs extends Applet implements ItemListener
• {
• Checkbox c1,c2,c3;
• TextField t1;
public void init()
                              public void itemStateChanged(ItemEvent e)
{
                              {
  c1 = new Checkbox("1");
                                if(e.getItemSelectable() == c1)
  add(c1);
                                    t1.setText("c1 is clicked");
  c1.addItemListener(this);
                                  if(e.getItemSelectable() == c2)
 c2=new Checkbox("2");
                                     t1.setText("c2 is clicked");
 add(c2);
 c2.addItemListener(this);
                                  if(e.getItemSelectable() == c3)
                                      t1.setText("c3 is clicked");
 c3=new Checkbox("3");
                              }
 add(c3);
 c3.addItemListener(this);

t1=new TextField(20);
add(t1);
}
Radio Buttons




Add CheckGroupBox()
•   import java.applet.Applet;
•   import java.awt.*;
•   import java.awt.Checkbox;
•   import java.awt.event.*;

• /*
• <Applet code=Radios.class width="200" height="200"></Applet>
• */

• public class Radios extends Applet implements ItemListener
• {
• CheckboxGroup c;
• Checkbox c1,c2,c3;
• TextField t1;
public void init()               public void itemStateChanged(ItemEvent e)
{                                {
  c=new CheckboxGroup();           if(e.getItemSelectable() == c1)
                                    t1.setText("R1 is clicked");
 c1=new Checkbox("1",false,c);
 add(c1);                            if(e.getItemSelectable() == c2)
 c1.addItemListener(this);            t1.setText("R2 is clicked");

 c2=new Checkbox("2",false,c);       if(e.getItemSelectable() == c3)
 add(c2);                             t1.setText("R3 is clicked");
 c2.addItemListener(this);       }

 c3=new Checkbox("3",false,c);
 add(c3);
 c3.addItemListener(this);

 t1=new TextField(20);
 add(t1);
}
Adapter Class
•   import java.applet.*;
•   import java.awt.*;
•   import java.awt.event.*;
•   public class MouseAdapterDemo extends Applet {
•   public void init() {
•   setBackground(Color.green);
•   addMouseListener(new MyMouseAdapter(this));
•   }
•   }
•   class MyMouseAdapter extends MouseAdapter {
•   MouseAdapterDemo mad;
•   public MyMouseAdapter(MouseAdapterDemo mad) {
•   this.mad = mad;
•   }
Adapter Class
•   public void mousePressed(MouseEvent me) {
•   mad.setBackground(Color.red);
•   mad.repaint();
•   }
•   public void mouseReleased(MouseEvent me) {
•   mad.setBackground(Color.green);
•   mad.repaint();
•   }
•   }
Inner Classes
• inner class is a class defined within other class,
  or even within an expression.
Inner Class
•   import java.applet.*;
•   import java.awt.*;
•   import java.awt.event.*;
•   /*
•   <applet code="MouseInnerDemo" width=100 height=100>
•   </applet>
•   */
•   public class MouseInnerDemo extends Applet {
•   public void init() {
•   setBackground(Color.green);
•   addMouseListener(new MyMouseAdapter());
•   }
Inner Class
•   class MyMouseAdapter extends MouseAdapter {
•   public void mousePressed(MouseEvent me) {
•   setBackground(Color.red);
•   repaint();
•   }
•   public void mouseReleased(MouseEvent me) {
•   setBackground(Color.green);
•   repaint();
•   }
•   }
•   }
Anonymous inner class
• An anonymous inner class is one that is not
  assigned a name
Anonymous Inner Classes
•   // Anonymous inner class demo.
•   import java.applet.*;
•   import java.awt.event.*;
•   /*
•   <applet code="AnonymousInnerClassDemo" width=200 height=100>
•   </applet>
•   */
•   public class AnonymousInnerClassDemo extends Applet {
•   public void init() {
•   addMouseListener(new MouseAdapter() {
•   public void mousePressed(MouseEvent me) {
•   showStatus("Mouse Pressed");
•   }
•   });
•   }
•   }
Event handling

More Related Content

What's hot (20)

Constructor in java
Constructor in javaConstructor in java
Constructor in java
 
JDBC – Java Database Connectivity
JDBC – Java Database ConnectivityJDBC – Java Database Connectivity
JDBC – Java Database Connectivity
 
Jdbc ppt
Jdbc pptJdbc ppt
Jdbc ppt
 
Java exception
Java exception Java exception
Java exception
 
Broadcast Receiver
Broadcast ReceiverBroadcast Receiver
Broadcast Receiver
 
Exception Handling in JAVA
Exception Handling in JAVAException Handling in JAVA
Exception Handling in JAVA
 
Notification android
Notification androidNotification android
Notification android
 
Collections - Maps
Collections - Maps Collections - Maps
Collections - Maps
 
Collection Framework in java
Collection Framework in javaCollection Framework in java
Collection Framework in java
 
Location-Based Services on Android
Location-Based Services on AndroidLocation-Based Services on Android
Location-Based Services on Android
 
Collections and generics
Collections and genericsCollections and generics
Collections and generics
 
Introduction to EJB
Introduction to EJBIntroduction to EJB
Introduction to EJB
 
Java rmi
Java rmiJava rmi
Java rmi
 
Introduction to fragments in android
Introduction to fragments in androidIntroduction to fragments in android
Introduction to fragments in android
 
Android Services
Android ServicesAndroid Services
Android Services
 
Java collections concept
Java collections conceptJava collections concept
Java collections concept
 
Inheritance in JAVA PPT
Inheritance  in JAVA PPTInheritance  in JAVA PPT
Inheritance in JAVA PPT
 
Android notification
Android notificationAndroid notification
Android notification
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in java
 
Controls in asp.net
Controls in asp.netControls in asp.net
Controls in asp.net
 

Similar to Event handling

event-handling.pptx
event-handling.pptxevent-handling.pptx
event-handling.pptxusvirat1805
 
Chapter 11.5
Chapter 11.5Chapter 11.5
Chapter 11.5sotlsoc
 
tL20 event handling
tL20 event handlingtL20 event handling
tL20 event handlingteach4uin
 
java- Abstract Window toolkit
java- Abstract Window toolkitjava- Abstract Window toolkit
java- Abstract Window toolkitJayant Dalvi
 
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKD
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKDPPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKD
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKDchessvashisth
 
Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2PRN USM
 
object oriented programming examples
object oriented programming examplesobject oriented programming examples
object oriented programming examplesAbdii Rashid
 
Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Marlon Luz
 
event handling new.ppt
event handling new.pptevent handling new.ppt
event handling new.pptusama537223
 

Similar to Event handling (20)

event-handling.pptx
event-handling.pptxevent-handling.pptx
event-handling.pptx
 
09events
09events09events
09events
 
Awt event
Awt eventAwt event
Awt event
 
Chapter 11.5
Chapter 11.5Chapter 11.5
Chapter 11.5
 
Awt components
Awt componentsAwt components
Awt components
 
Java awt
Java awtJava awt
Java awt
 
AWTEventModel
AWTEventModelAWTEventModel
AWTEventModel
 
Java awt
Java awtJava awt
Java awt
 
tL20 event handling
tL20 event handlingtL20 event handling
tL20 event handling
 
JAVA AWT
JAVA AWTJAVA AWT
JAVA AWT
 
java- Abstract Window toolkit
java- Abstract Window toolkitjava- Abstract Window toolkit
java- Abstract Window toolkit
 
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKD
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKDPPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKD
PPThbkjn;l sdc a;s'jjN djkHBSDjhhIDoj LKD
 
Lecture8 oopj
Lecture8 oopjLecture8 oopj
Lecture8 oopj
 
Java-Events
Java-EventsJava-Events
Java-Events
 
Md11 gui event handling
Md11 gui event handlingMd11 gui event handling
Md11 gui event handling
 
Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2
 
Lecture9 oopj
Lecture9 oopjLecture9 oopj
Lecture9 oopj
 
object oriented programming examples
object oriented programming examplesobject oriented programming examples
object oriented programming examples
 
Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2
 
event handling new.ppt
event handling new.pptevent handling new.ppt
event handling new.ppt
 

More from Anand Grewal

More from Anand Grewal (13)

distributed dbms
distributed dbmsdistributed dbms
distributed dbms
 
Transaction concurrency control
Transaction concurrency controlTransaction concurrency control
Transaction concurrency control
 
Object modeling
Object modelingObject modeling
Object modeling
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
 
Object modeling
Object modelingObject modeling
Object modeling
 
O ops concepts
O ops conceptsO ops concepts
O ops concepts
 
System design
System designSystem design
System design
 
Presentation12
Presentation12Presentation12
Presentation12
 
Presentation1
Presentation1Presentation1
Presentation1
 
Isp
IspIsp
Isp
 
Java
JavaJava
Java
 
Pptemail
PptemailPptemail
Pptemail
 
Presentation on dns
Presentation on dnsPresentation on dns
Presentation on dns
 

Recently uploaded

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationRosabel UA
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)cama23
 

Recently uploaded (20)

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translation
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)
 

Event handling

  • 2. Event handling • It's now time to see how to get GUIs to respond to user actions like clicking on a button, typing text or dragging the mouse. • These things are called events, and responding to them is called event handling.
  • 3. Events Types No User User Interface Interface •Pressing a button •Timer Expires •Entering a charcter by •Counter Exceed value keyboard •Software or hardware failure •Selecting an item from •Operation is completed list
  • 4. Delegation Model • Event Sources • Events Listener • Event Classes
  • 5. Event Sources • An object that generate an event • A source must register listener in order to receive notification about specific type of event
  • 6. Add Listener Syntax: public void add<Type>Listener(TypeListener obj) • Keyboard: addKeyListener() • Mouse :addMouseMotionListener()
  • 7. Remove Listener Syntax: public void removeTypeListener(TypeListener el) • removeKeyListener( ).
  • 8. Event Listeners • In Java, event handling is based on listeners. • A listener is an object with a method which contains the code we want to run when an event happens
  • 9. Major Requirements • Registered to receive notifications about specific types of events. • implement methods to receive and process these notifications.
  • 10. Generate Source Multicasting An Event Unicasting Receive Copy Receive Copy Listener Listeners Process the event Process the event & return & return
  • 11. Event Classes SuperClass Available In EventObject Class Java.util Subclass SuperClass Available In AWTEvent Class Java.awt Subclass All AwtEvents
  • 12. The recipe for event handling • Write class MyListener which implements ActionListener (or whatever). • Set up a GUI as before. • Create a MyListener object. • Associate the MyListener object with the component we want to respond to, using addActionListener
  • 13. Event Class • ActionListener Interfaces Sources User • Button is Pressed • Button ActionEvent • List Class • ListItem is DoubleClicked • Menu Item • Menu item is Selected Method • void actionPerformed(ActionEvent ae)
  • 15. • import java.applet.Applet; • import java.awt.*; • import java.awt.event.*; • /* • <Applet code=Textarea.class width="200" height="200"></Applet> • <*/ public class Textarea extends Applet implements ActionListener • { • TextArea t1; • Button b1; •
  • 16. public void init() { t1=new TextArea(" ",5,20); add(t1); b1=new Button("click here"); add(b1); b1.addActionListener(this); } public void actionPerformed(ActionEvent e) { String msg="Welcome to java"; if(e.getSource()==b1) { t1.insert(msg,0); } }
  • 18. List Box • import java.applet.Applet; • import java.awt.*; • import java.awt.event.*; • /* • <Applet code=list.class width="200" height="200"> • </Applet> • */ • public class list extends Applet implements ActionListener • { • List list1; • TextField t1; •
  • 19. ListBox…. public void init() public void actionPerformed(ActionEvent e) { { t1=new TextField(20); if(e.getSource()==list1) add(t1); t1.setText(((List)e.getSource()).getSelectedItem()); } list1=new List(4); list1.add("item1"); list1.add("item2"); list1.add("item3"); list1.add("item4"); list1.add("item5"); add(list1); list1.addActionListener(this); }
  • 20. Event Class • ItemListener Interfaces Sources User • CheckBox is clicked • CheckBox ItemEvent • List Class • List item is clicked • Chioce • Choice Selection is made • Checkable menu item is selected or deselected. Method • void itemStateChanged(ItemEvent ie)
  • 22. CheckBox • import java.applet.Applet; • import java.awt.*; • import java.awt.Checkbox.*; • import java.awt.event.*; • /* • <Applet code=checkboxs.class height="200" width="200"></Applet> • */ • public class checkboxs extends Applet implements ItemListener • { • Checkbox c1,c2,c3; • TextField t1;
  • 23. public void init() public void itemStateChanged(ItemEvent e) { { c1 = new Checkbox("1"); if(e.getItemSelectable() == c1) add(c1); t1.setText("c1 is clicked"); c1.addItemListener(this); if(e.getItemSelectable() == c2) c2=new Checkbox("2"); t1.setText("c2 is clicked"); add(c2); c2.addItemListener(this); if(e.getItemSelectable() == c3) t1.setText("c3 is clicked"); c3=new Checkbox("3"); } add(c3); c3.addItemListener(this); t1=new TextField(20); add(t1); }
  • 25. import java.applet.Applet; • import java.awt.*; • import java.awt.Checkbox; • import java.awt.event.*; • /* • <Applet code=Radios.class width="200" height="200"></Applet> • */ • public class Radios extends Applet implements ItemListener • { • CheckboxGroup c; • Checkbox c1,c2,c3; • TextField t1;
  • 26. public void init() public void itemStateChanged(ItemEvent e) { { c=new CheckboxGroup(); if(e.getItemSelectable() == c1) t1.setText("R1 is clicked"); c1=new Checkbox("1",false,c); add(c1); if(e.getItemSelectable() == c2) c1.addItemListener(this); t1.setText("R2 is clicked"); c2=new Checkbox("2",false,c); if(e.getItemSelectable() == c3) add(c2); t1.setText("R3 is clicked"); c2.addItemListener(this); } c3=new Checkbox("3",false,c); add(c3); c3.addItemListener(this); t1=new TextField(20); add(t1); }
  • 27. Adapter Class • import java.applet.*; • import java.awt.*; • import java.awt.event.*; • public class MouseAdapterDemo extends Applet { • public void init() { • setBackground(Color.green); • addMouseListener(new MyMouseAdapter(this)); • } • } • class MyMouseAdapter extends MouseAdapter { • MouseAdapterDemo mad; • public MyMouseAdapter(MouseAdapterDemo mad) { • this.mad = mad; • }
  • 28. Adapter Class • public void mousePressed(MouseEvent me) { • mad.setBackground(Color.red); • mad.repaint(); • } • public void mouseReleased(MouseEvent me) { • mad.setBackground(Color.green); • mad.repaint(); • } • }
  • 29. Inner Classes • inner class is a class defined within other class, or even within an expression.
  • 30. Inner Class • import java.applet.*; • import java.awt.*; • import java.awt.event.*; • /* • <applet code="MouseInnerDemo" width=100 height=100> • </applet> • */ • public class MouseInnerDemo extends Applet { • public void init() { • setBackground(Color.green); • addMouseListener(new MyMouseAdapter()); • }
  • 31. Inner Class • class MyMouseAdapter extends MouseAdapter { • public void mousePressed(MouseEvent me) { • setBackground(Color.red); • repaint(); • } • public void mouseReleased(MouseEvent me) { • setBackground(Color.green); • repaint(); • } • } • }
  • 32. Anonymous inner class • An anonymous inner class is one that is not assigned a name
  • 33. Anonymous Inner Classes • // Anonymous inner class demo. • import java.applet.*; • import java.awt.event.*; • /* • <applet code="AnonymousInnerClassDemo" width=200 height=100> • </applet> • */ • public class AnonymousInnerClassDemo extends Applet { • public void init() { • addMouseListener(new MouseAdapter() { • public void mousePressed(MouseEvent me) { • showStatus("Mouse Pressed"); • } • }); • } • }