我编写下面的代码并希望在另一个类中调用mousepress方法,但我得到错误来定义参数mouseevent我调用它的位置,但是当我定义变量mouseevent时出现NullPointerException
错误{ {1}}。
请帮帮我。
e
答案 0 :(得分:-1)
这是一个简短的演示,可以帮助您入门。 基本上,您在类中创建需要响应鼠标单击(Moo)的侦听器,并将其添加到生成鼠标事件的类中的组件中:
import java.awt.Dimension;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Foo extends JFrame {
private JButton btn;
Foo(){
super("Foo frame");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setPreferredSize(new Dimension(200,100));
setLocationRelativeTo(null);
btn = new JButton("Click Me");
getContentPane().add(btn);
validate();
pack();
}
JButton getBtn() {
return btn;
}
public static void main(String[] args) {
Foo foo = new Foo();
Moo moo = new Moo();
foo.getBtn().addMouseListener(moo.getMouseListener());
foo.setVisible(true);
}
}
class Moo {
Moo() {}
MouseListener getMouseListener() {
return new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
System.out.println("Mouse pressed ! ");
}
};
}
}
如果您需要更多说明,请不要犹豫。