黑马程序员技术交流社区
标题:
GUI鼠标事件出问题
[打印本页]
作者:
杜光
时间:
2013-6-9 22:32
标题:
GUI鼠标事件出问题
本帖最后由 杜光 于 2013-6-10 07:40 编辑
运行报错
AwtDemo.java:50: 错误: <匿名AwtDemo$3>不是抽象的, 并且未覆盖MouseListener中的抽
象方法mouseExited(MouseEvent)
{
^
1 个错误
import java.awt.*;
import java.awt.event.*;
class AwtDemo
{
public static void main(String[] args)
{
Frame f = new Frame("my awt");
f.setSize(500,400);
f.setLocation(300,200);
f.setLayout(new FlowLayout());
Button but = new Button("我是一个按钮");
f.add(but);
f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.out.println("我关");
System.exit(0);
}
public void windowActivated(WindowEvent e)
{
System.out.println("我被激活了");
}
public void windowOpened(WindowEvent e)
{
System.out.println("我被打开了,哈哈哈");
}
});
//按键监听器
but.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
System.out.println("退出 按钮干的!");
System.exit(0);
}
});
//鼠标监听器
but.addMouseListener(new MouseListener()
{
public void mouseEntered(MouseEvent e)
{
System.out.println("你碰到我啦!");
}
})
f.setVisible(true);
}
}
复制代码
作者:
风爽
时间:
2013-6-9 22:49
重写MouseListener中的抽象方法mouseExited(MouseEvent)就可以啊
最简单的就是只将MouseListener中的抽象方法加上,不写方法体
作者:
阳丹
时间:
2013-6-9 23:06
楼主没有实现MouseListener的抽象方法
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class AwtDemo
{
public static void main(String[] args)
{
Frame f = new Frame("my awt");
f.setSize(500,400);
f.setLocation(300,200);
f.setLayout(new FlowLayout());
Button but = new Button("我是一个按钮");
f.add(but);
f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.out.println("我关");
System.exit(0);
}
public void windowActivated(WindowEvent e)
{
System.out.println("我被激活了");
}
public void windowOpened(WindowEvent e)
{
System.out.println("我被打开了,哈哈哈");
}
});
//按键监听器
but.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
System.out.println("退出 按钮干的!");
System.exit(0);
}
});
//鼠标监听器
but.addMouseListener(new MouseListener()
{
public void mouseEntered(MouseEvent e)
{
System.out.println("你碰到我啦!");
}
//以下四个方法时 MouseLinstner的抽象方法
@Override
public void mouseClicked(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
}) ;
f.setVisible(true);
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2