Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使鼠标按钮触发类事件_Java_Swing - Fatal编程技术网

Java 使鼠标按钮触发类事件

Java 使鼠标按钮触发类事件,java,swing,Java,Swing,我真的在努力制作一个有按钮的程序,当一个按钮被点击时,它会调用一个类来工作。我现在只使用Java大约10周了,我已经掌握了基本知识,但我还没有找到任何地方让我了解我想在这里做什么 我试过了 public void mouseEntered(MouseEvent e) { if (e.getButton()== MouseEvent.BUTTON3){ Object triangle;

我真的在努力制作一个有按钮的程序,当一个按钮被点击时,它会调用一个类来工作。我现在只使用Java大约10周了,我已经掌握了基本知识,但我还没有找到任何地方让我了解我想在这里做什么

我试过了

public void mouseEntered(MouseEvent e) {

                 if (e.getButton()== MouseEvent.BUTTON3){
                       Object triangle;
                       Frame.class.getClass();
                 }

          }
我也试过了

panel.addMouseListener(new MouseAdapter() {
if (e.getButton()== MouseEvent.BUTTON1) {
    Frame.class.getClass(circle); }
无论采用哪种方法,我都会在找不到对象时出错,或者类型
对象
中的方法
getClass()
不适用于参数(
JButton

谁能帮我找出我做错了什么

多谢各位

public class MainFrame extends JFrame {

private JButton button = new JButton("Run AnotherClass");

MainFrame() {
    super();
    this.setTitle("Demo App");
    this.setSize(200,200);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setLayout(new FlowLayout());
    this.add(button);
    button.addActionListener(new ButtonHandler());
}

public class ButtonHandler implements ActionListener {      
    public void actionPerformed(ActionEvent e) {
        new AnotherClass();
    }
}

public static void main(String[] args) {
    new MainFrame().setVisible(true);
}
}


}

如果我遇到这样的问题,我会首先查看教程,特别是。当然你做得对,你已经看到你根本不应该使用鼠标侦听器,而是应该在你的JButton中添加一个ActionListener。我也知道了如何使用JButton ActionListener而不是MouseeEvent。我只选了一个MouseEvent的听众,因为一个朋友说我应该试试。我知道我可以使用类Listener实现ActionListener{public void actionPerformed(ActionEvent e){然后如果点击了这个按钮,就这样做。我仍然不知道如何让这个动作执行我在另一个文件中创建的类。然后你应该拿起你的基本OO编程书,因为我在另一个文件中创建的类听上去你一开始缺乏一些基本的Java/OO知识也许你会想更详细地描述你正在尝试做什么。你想对什么用户事件做出反应?按下按钮?点击JPanel?其他什么?你想让这个事件刺激什么动作?你能展示更多你尝试过的代码和看到的错误的细节吗?@user1350056:由于您的代码只涉及单击按钮,而不涉及单击JPanel,请相信我--忽略您的朋友或任何让您使用鼠标侦听器的人,因为他们完全错了。请按照我和其他人的建议使用ActionListener。
public class AnotherClass {
public AnotherClass()   {       
    JOptionPane.showMessageDialog(null, "AnotherClass is in operation");
}