程序是在鼠标进入btn1时后台打印出一段话!可是我的程序怎么都通不过编译,想了半天也没有解决!
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class mouseTest extends JFrame {
JPanel jp;
BorderLayout br;
/*
* 添加Button
*/
JButton btn1;
JButton btn2;
public void mouseTest()
{
this.setTitle("123");
br = new BorderLayout();
jp = new JPanel();
btn1 = new JButton("123");
btn2 = new JButton("456");
jp.add(btn1,java.awt.BorderLayout.NORTH);
btn1.addMouseListener(new btn1());//添加事件
this.getContentPane().add(jp);
setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(500,600);
setVisible(true);
}
class btn1 implements MouseListener
{
public void mouseEntered(MouseEvent e)
{
System.out.println("324");
}
}
public static void main(String[] args) {
mouseTest mt = new mouseTest();
mt.mouseTest();
}
}
----------------解决方案--------------------------------------------------------
class btn1 implements MouseListener
{
public void mouseEntered(MouseEvent e)
{
System.out.println("324");
}
}
你这个类能编译能过吗?
不可能吧
改为extends MouseAdapter
----------------解决方案--------------------------------------------------------
哦!刚学这个事件 拿去试试
----------------解决方案--------------------------------------------------------
好了 不过为什么是继承鼠标的试配器而不是实现监听呢???
----------------解决方案--------------------------------------------------------
实现你必须得实现MouseListener所有的方法
----------------解决方案--------------------------------------------------------
这个和实现按钮事件不一样哦!是不是所有的鼠标事件都是要这样呢?还是说除了按钮事件都要这样?
----------------解决方案--------------------------------------------------------
因为MouseListener接口里面定义了很多方法
而ActionListener里面却只定义了一个方法
----------------解决方案--------------------------------------------------------
知道了!再找找资料吧!
----------------解决方案--------------------------------------------------------
大哥,帮我这个也看看,编译通不过!我刚学java。
import java.awt.*;
import java.awt.event.*;
public class TestButton{
public static void main(String args[])
{
Frame f = new Frame("Test");
Button b = new Button("Press me");
b.addActionListener(new ButtonHandle());
f.setLayout(new FlowLayout());
f.add(b);
f.setSize(200,200);
f.setVisible(true);
}
class ButtonHandle implements ActionListener{
public void actionPerformed(ActionEvent e){
System.out.println("Action occurred");
}
}
}
----------------解决方案--------------------------------------------------------
静态方法里面不能引入非静态成员,你有两个解决问题的方法
一,在class ButtonHandle前面加一个static 使之成为静态内部类
二,把class ButtonHandle放到类TestButton外面
----------------解决方案--------------------------------------------------------