首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

排错

2013-01-05 
排错求救!/** * 鼠标、键盘、窗口监听 */package com.test2import javax.swing.*import java.awt.*import

排错求救!
/**
 * 鼠标、键盘、窗口监听
 */

package com.test2;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.MouseListener.*;
public class Demo9_5 extends JFrame {

MyPanel mp=null;
public static void main(String[] args) {
Demo9_5 demo9_5=new Demo9_5();
}

//构造函数
public Demo9_5()
{
mp=new MyPanel();

this.add(mp);
//注册监听
this.addMouseListener(mp);
this.addKeyListener(mp);
this.addMouseMotionListener(mp);
this.addWindowListener(mp);

this.setSize(400,300);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}


}

//1.让MYPANEL知道鼠标按下的消息,并且知道点击的位置(x,y)
//2、让MYPANEL知道哪个键按下
//3.让MYPANEL知道鼠标移动,拖拽
//4.让MYPANEL知道窗口的变化(关闭,最小化,最大化)

class MyPanel extends JPanel implements MouseListener,KeyListener,MouseMotionListener,WindowListener
{
public void paint(Graphics g)
{
super.paint(g);
}

//鼠标点击
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
System.out.println("鼠标点击了 x=" + arg0.getX()+"y=" + arg0.getY());
}

//鼠标移动进PANEL
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
System.out.println("鼠标来了");
}

//鼠标离开PANEL
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub
System.out.println("鼠标走了");
}

//鼠标按下去但还没有松开
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub

}

//鼠标松开
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub

}

//键按下
public void keyPressed(KeyEvent arg0) {
// TODO Auto-generated method stub
System.out.println(arg0.getKeyChar()+"键按下");
}

//键松开
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub

}

//键输入
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseDragged(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseMoved(MouseEvent arg0) {
// TODO Auto-generated method stub
System.out.println("鼠标当前坐标  x="+arg0.getX());
}

//窗口激活了
public void windowActivated(WindowEvent arg0) {
// TODO Auto-generated method stub
System.out.println("windowActivated");
}

//窗口关闭了
public void windowClosed(WindowEvent arg0) {
// TODO Auto-generated method stub
System.out.println("关闭");
}

//窗口正在关闭
public void windowClosing(WindowEvent arg0) {
// TODO Auto-generated method stub

}

//窗口最小化
public void windowDeactivated(WindowEvent arg0) {
// TODO Auto-generated method stub
System.out.println("最小化");


}

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

}

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

}

//窗口打开了
public void windowOpened(WindowEvent arg0) {
// TODO Auto-generated method stub

}
}



报错是:Exception in thread "main" java.lang.ClassCastException: com.test2.MyPanel cannot be cast to java.awt.event.MouseListener
at java.awt.AWTEventMulticaster.add(Unknown Source)
at java.awt.Component.addMouseListener(Unknown Source)
at com.test2.Demo9_5.<init>(Demo9_5.java:24)
at com.test2.Demo9_5.main(Demo9_5.java:14)
请问如何解决,我是初学者,看着韩顺平的教学视频自学,麻烦高手简单说明报错原因和解决原理,谢谢
[解决办法]
在我的电脑上运行没什么问题呀,是不是你的Eclipse配置有问题

热点排行