Tải bản đầy đủ (.pdf) (11 trang)

Lecture An introduction to computer science using java (2nd Edition): Chapter 11 - S.N. Kamin, D. Mickunas, E. Reingold

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.5 MB, 11 trang )

Chapter 11

Java AWT Part I: Mouse Events
(Optional)
Lecture Slides to Accompany

An Introduction to Computer
Science Using Java (2nd Edition)
by
S.N. Kamin, D. Mickunas, E. Reingold
 

 


Chapter Preview
In this chapter we will:
• introduce event driven programming
• show how a program can respond to mouse
events (e.g. clicks and mouse movements)
• demonstrate how to implement a listener
interface
• show how mouse events can be used to build
highly interactive programs
 

 


Abstract Windowing Toolkit
(AWT)


• Part of the Java distribution, but not part of
the Java language itself
• AWT is library of classes and methods used
by Java programmers that supported are by
the basic Java runtime libraries
• Even though this chapter is labeled optional,
it is not possible to be a complete Java
programmer without understanding the AWT
 

 


Java Events
• Events are occurrences outside of the
program to which the program must respond
(e.g. user key press)
• Event managers are methods that first catch
the event
• Listener classes send messages to an event
manager requesting to be notified when a
particular message occurs
• Event managers send messages to listeners
notifying them when a particular event occurs
 

 


Creating Mouse Click Listeners

1. Import the java.awt.event package
2. In the class header, add the words
implements MouseListener
3. Send the addMouseListerner(this)
message to the mouse event manager
(should be done in the constructor method)
4. Define methods mouseClicked,
mousePressed, mouseReleased,
mouseEntered, mouseExited
 

 


Mouse Click Listener Template
import java.awt.event.*;

public class classname implements MouseListener {

// include manager.addMouseListener(this);
// in some initialization method

public void mouseClicked (MouseEvent e) { … }
public void mousePressed (MouseEvent e) { … }
public void mouseReleased (MouseEvent e) { … }
public void mouseEntereded (MouseEvent e) { … }
public void mouseExited (MouseEvent e) { … }
}

 


 


Finding Mouse Location
• Inside mouseClicked the argument e of type
MouseEvent can be used to find the location
of the mouse cursor
• The call e.getX( ) returns the value of the
horizontal coordinate of the mouse cursor
position
• The call e.getY( ) returns the value of the
vertical coordinate of the mouse cursor
position
 

 


Creating Mouse Motion Listeners
1. Import the java.awt.event package
2. In the class header, add the words
implements MouseMotionListener
3. Send the message
addMouseMotionListerner(this)
to the mouse event manager (should be
done in the constructor method)
4. Define methods mouseMoved and
mouseDragged
 


 


Mouse Motion Listener Template
import java.awt.event.*;

public class classname implements MouseMotionListener {

// include manager.addMouseListener(this);
// in some initialization method

public void mouseMoved (MouseEvent e) { … }
public void mouseDragged (MouseEvent e) { … }
}

 

 


Mouse Motion
• mouseMoved will be called each time the
mouse makes a significantly large movement
• mouseDragged will be called instead if thre
mouse button is pressed and the mouse
makes a significantly large movement

 


 


Listening to All Mouse Events
• Two catch all seven mouse events use the
following class header
public class classname implements
MouseListener, MouseMotionListener {

• You then need to define all seven mouse
methods mouseMoved, mouseDragged,
mouseClicked, mousePressed,
mouseReleased, mouseEntered,
mouseExited
 

 



×