/** * ClickableFrame illustrates the MouseListener interface. * * @author Jeff Ondich * @version 2/24/05 */ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class ClickableFrame extends JFrame implements MouseListener { private int x; private int y; private String message; public ClickableFrame( String title, String mess ) { // Arrange for mouse events to be sent to this window. addMouseListener( this ); // Initialize the window. setSize( 500, 600 ); setLocation( 20, 20 ); setTitle( title ); setBackground( Color.white ); toFront(); setVisible( true ); // Initialize the text location and message. x = 200; y = 100; message = mess; } public void paint( Graphics g ) { g.clearRect( 0, 0, getWidth(), getHeight() ); if( message != null ) g.drawString( message, x, y ); } public void mousePressed( MouseEvent e ) { x = e.getX(); y = e.getY(); message = ""; repaint(); } public void mouseReleased( MouseEvent e ) { } public void mouseClicked( MouseEvent e ) { } public void mouseEntered( MouseEvent e ) { } public void mouseExited( MouseEvent e ) { } public void mouseDragged( MouseEvent e ) { } public static void main( String[] args ) { ClickableFrame window = new ClickableFrame( "This is clickable", "" ); window.repaint(); // Arrange for the program to shut down when you close the window. window.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); } }