package graphic;import java.awt.Frame;
import java.awt.Label;
import java.awt.event.MouseListener;
import java.awt.TextField;
import java.awt.event.MouseEvent;
import java.awt.event.WindowListener;
import java.awt.event.WindowEvent;
import java.awt.event.MouseMotionListener;public class LisenerTest implements MouseListener,MouseMotionListener,
WindowListener
{
private Frame f;
private TextField tf;

public static void main(String[] args)
{
LisenerTest lt = new LisenerTest();
lt.go();

}

public void go()
{
f = new Frame("监听器样列!");
// System.out.println(f.getLayout().toString());
f.add(new Label("单击拖动鼠标"),"North");
tf = new TextField(30);

f.add(tf,"South");
f.addMouseListener(this);
f.addMouseMotionListener(this);
f.addWindowListener(this);

f.setSize(300,300);
f.setVisible(true);
} @Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.exit(0);
} @Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub

} @Override
public void mouseDragged(MouseEvent e) {
// TODO Auto-generated method stub
String s = "鼠标坐标:X = "+e.getX()+" Y = " +e.getY();
tf.setText(s);
} @Override
public void mouseMoved(MouseEvent e) {
// TODO Auto-generated method stub

} @Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub

} @Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub

} @Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub

} @Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
String s = "按下鼠标";
tf.setText(s);
} @Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
String s = "鼠标移开";
tf.setText(s);
}
}
/**1,该类实现了监听器接口后,事件发生之后,就会从这个被指定的监听器(this)中去寻找解决方案。这样能保证寻找到正确的方法么?实现这么多接口,会不会出现同名的方法,而导致出现错误?
2,可否直接new 接口(){ };解决掉问题。接口可以生成临时的对象么?
3,MouseListener
MouseMotionListener
  两个接口有何区别呢? */