设计并实现一个程序,其背景色会依据鼠标位置而变化:当鼠标位于左半窗口时背景色为红色;当鼠标位于右半窗口时背景色为兰色。设窗口初始的背景色为绿色。
代码:
import java.awt.*;
import java.awt.event.*;
public class ClickCanvasTest extends Frame
{ private class WindowCloser extends WindowAdapter
{ public void windowClosing(WindowEvent we)
{ System.exit(0); }
}
public ClickCanvasTest()
{ super("移动鼠标颜色变化");
add (new ClickCanvas());
addWindowListener(new WindowCloser());
addMouseMotionListener(this);
pack(); setVisible(true);
}
public static void main(String args[])
{ new ClickCanvasTest(); }
}
class ClickCanvas extends Canvas
{ private class MouseMotion extends MouseAdapter
{ public void MouseMotion(MouseEvent event)
{
Graphics page = getGraphics();
if(getX()>=250 && getX()<=500)
page.getred();
if(getx()<=250 && getX()>=0)
page.getblue();
}
}
}
public ClickCanvas()
{ setBackground (Color.green);
addMouseListener (new MouseClicked());
setSize (500, 300);
}