将鼠标侦听器添加到java中的矩形

正如标题所示,我试图在窗口上添加一个基本形状的动作监听器。 我想知道这是否可能? 我尝试添加侦听器时遇到错误。

public static void main(String args[]) { JFrame frame = new Main(); frame.setSize(300, 200); frame.setVisible(true); frame.setBackground(Color.BLUE); } Rectangle2D rect = new Rectangle2D.Double(60, 70, 120, 80); public void paint(Graphics g) { Graphics2D g1 = (Graphics2D)g; g1.draw(rect); g1.setPaint(Color.yellow); g1.fill(rect); } Handlerclass handle = new Handlerclass(); rect.addMouseListener(handle); public class Handlerclass implements MouseListener{ public void mouseClicked (MouseEvent e){ } } 

您无法向该对象添加鼠标侦听器。 如果您尝试检测其中的鼠标单击,那么您希望将鼠标侦听器添加到正在绘制形状的任何Swing容器中,然后使用其中一个contains...intersects...方法。

如果有机会,请查看Rectangle2D的文档。