// Select.java click on points, connect the dots import java.awt.*; import java.awt.event.*; public class Select extends Frame { int x, y, b; int r1x1 = 100; // red rectangle int r1y1 = 120; int r1x2 = 200; int r1y2= 250; int r2x1 = 180; // blue rectangle int r2y1 = 220; int r2x2 = 300; int r2y2= 350; Color color1 = Color.red; Color color2 = Color.blue; Select() { setTitle("Select"); setSize(400,400); setBackground(Color.white); setForeground(Color.black); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); setVisible(true); this.addMouseListener (new mousePressHandler()); } class mousePressHandler extends MouseAdapter { public void mousePressed (MouseEvent e) { x = e.getX(); y = e.getY(); b = e.getButton(); if(inrect(x,y,r1x1,r1y1,r1x2,r1y2)) color1 = Color.green; else color1 = Color.red; if(inrect(x,y,r2x1,r2y1,r2x2,r2y2)) color2 = Color.green; else color2 = Color.blue; requestFocus(); System.out.println("at x="+x+" y="+y+" b="+b); // debug print repaint(); } } public boolean inrect(int x, int y, int x1, int y1, int x2, int y2) { if(xx2) return false; if(yy2) return false; return true; } public void paint(Graphics g) { // draw objects g.setColor(Color.black); g.drawString("select an object with the mouse", 20, 50); g.setColor(color1); g.fillRect(r1x1, r1y1, r1x2-r1x1, r1y2-r1y1); g.setColor(color2); g.fillRect(r2x1, r2y1, r2x2-r2x1, r2y2-r2y1); } public static void main(String args[]) { new Select(); } }