Draw3
File: java/Draw3/Main.java
/*
* Drawing in a Canvas
* with mouse event callback
* R. Jacob 9/18/2001
*/
import java.awt.*;
import javax.swing.*;
public class Main extends JFrame {
public static void main (String [] args) {
new Main ();
}
public Main () {
// Window setup
setSize (300, 300);
Container content = getContentPane();
// Put a Canvas in
MyCanvas canvas = new MyCanvas ();
content.add (canvas);
// Show the window
setVisible (true);
}
}
File: java/Draw3/MyCanvas.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyCanvas extends JComponent implements MouseListener {
MyCanvas () {
addMouseListener (this);
}
// This is the draw callback
public void paintComponent (Graphics g) {
g.drawLine (50, 50, 100, 50);
}
// Listener callback
public void mousePressed (MouseEvent event) {
System.out.println ("Mouse down at " + event.getPoint().x + ", " + event.getPoint().y);
}
// MouseListener defines all of these, so we must supply them
public void mouseClicked (MouseEvent event) {}
public void mouseReleased (MouseEvent event) {}
public void mouseEntered (MouseEvent event) {}
public void mouseExited (MouseEvent event) {}
}