top examplets
Java 1.1 Event Handling
![]()
You've done some event handling (mouse clicks and so on) in JDK 1.0.2, or at least there are a ton of examples you can go by. But how the heck are you supposed to handle events under JDK 1.1? Actually, there is more than one pattern. I'll start with an examplet of the old style, then four examples of the new style.
// Demo1.java import java.applet.Applet; import java.awt.Event; // Old-style (pre 1.1) event handling public class Demo1 extends Applet { // Deprecated method, but a bug in jdk1.1 prevents the compiler from // warning you about deprecated methods which are being overridden. public boolean mouseDown (Event e, int x, int y) { System.out.println (e); return false; } };
// Demo2.java import java.applet.Applet; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; // New style event handling: The Applet is a MouseListener public class Demo2 extends Applet implements MouseListener { // We won't get mouse events unless we ask for them. public void init() {addMouseListener (this);} // Overridden MouseListener methods. Since MouseListener is an // interface, we have to implement even the ones we don't use. public void mouseClicked (MouseEvent e) {} public void mousePressed (MouseEvent e) {System.out.println (e);} public void mouseReleased (MouseEvent e) {} public void mouseEntered (MouseEvent e) {} public void mouseExited (MouseEvent e) {} };
See also
- JDK 1.1 Guide: Delegation Event Model
- API Reference: java.awt.Component.addMouseListener (MouseListener)
- API Reference: java.awt.event.MouseEvent
- API Reference: java.awt.event.MouseListener
// Demo3.java import java.applet.Applet; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; // New style event handling: An inner class is a MouseListener public class Demo3 extends Applet { // We won't get mouse events unless we ask for them. public void init() {addMouseListener (new MouseHandler() );} // Called by MouseHandler to handle a mouse click. public void handleMousePressed (MouseEvent e) {System.out.println (e);} // Our MouseListener class--takes the event we're interested in and // hands it to the applet. Since MouseListener is an interface, we have // to implement even the function we don't need. class MouseHandler implements MouseListener { public void mouseClicked (MouseEvent e) {} public void mousePressed (MouseEvent e) {handleMousePressed (e);} public void mouseReleased (MouseEvent e) {} public void mouseEntered (MouseEvent e) {} public void mouseExited (MouseEvent e) {} } };
See also
// Demo4.java import java.applet.Applet; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; // New style event handling: An inner class is a MouseAdapter public class Demo4 extends Applet { // We won't get mouse events unless we ask for them. public void init() {addMouseListener (new MouseHandler() );} // Called by MouseHandler to handle a mouse click. public void handleMousePressed (MouseEvent e) {System.out.println (e);} // A MouseAdapter implements MouseListener, implementing a do-nothing // method for each event. By extending MouseAdapter, we only have to // override the methods we care about. class MouseHandler extends MouseAdapter { public void mousePressed (MouseEvent e) {handleMousePressed (e);} } };
See also
// Demo5.java import java.applet.Applet; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; // New style event handling: An anonymous derivative of MouseAdapter public class Demo5 extends Applet { // Warning: Very strange language construct! Do not read unless full // brain explosion containment procedures are in effect. public void init() { addMouseListener ( new MouseAdapter() { public void mousePressed (MouseEvent e) {handleMousePressed (e);} } ); } // Called by the anonymous MouseAdapter to handle a mouse click. public void handleMousePressed (MouseEvent e) {System.out.println (e);} };
See also
Copyright (c) 1997 by Wayne E. Conrad, All Rights Reserved
Last Updated May 6, 1998
This page has been accidentally visitedtimes since May 1st, 1998.
![]()
![]()
This page hosted by Get your own Free Home Page