JFrame – 使用JComponent和MouseListener单击鼠标

有2个class –

public class MainClass { public static void main(String[] args) { JFrame frame = new JFrame(); .... Component mouseClick = new MyComponent() ; frame.setVisible(true); } public class MyComponent extends JComponent implements MouseListener { @Override public void mouseClicked(MouseEvent arg0) { System.out.println("here was a click ! "); } ... } 

我试图在frame上设置一个鼠标单击的监听器,但是当我运行它然后按鼠标单击没有任何反应。

如何使其工作?

要在框架上接收鼠标单击,还需要将mouseClick添加到框架的MouseListeners列表中。 创建mouseClick后尝试添加此行:

 frame.addMouseListener((MouseListener) mouseClick);