2014-01-08 135 views
0

你有没有人知道一种方法来检测,单板上的哪个卡被点击? 我在JPanel上得到了一个绘制多个卡片对象的课程。 现在我实施了MouseAdapter。点击鼠标时,应该检查卡片是否被点击。此外,它应该告诉我哪个对象被点击。检测点击卡

任何理论思想,程序或方法如何实现这一目标?

Card card = new Card(); 
public void paint(Graphics g) { 
    g.drawImage(card.getImage(), card.getX(), card.getY(), null); 
} 
+0

为了更好地帮助越早,张贴[MCVE(http://stackoverflow.com/help/mcve)。 –

+0

..但绝对使用['Rectangle2D'](http://docs.oracle.com/javase/7/docs/api/java/awt/geom/Rectangle2D.html)的子类进行研究。由于父类'实现Shape',因此可以像使用下面链接的示例一样使用它。 –

回答

2

你如何画卡?如果使用Java-2D API和Shape实例,它可能非常容易。有关使用复杂形状的碰撞检测的示例,请参阅this answer,然后仔细查看JavaDocs for Shape,其他方法可能有助于确定Point是否在形状内。

+0

我创建了一个名为“Card”的类。该卡包含一个BufferedImage。 使用JPanel的主要核心类包含paint(Graphics g)方法,其外观如下: public void paint(Graphics g){g.drawImage(card.getImage(),card.getX(),card)。 getY(),null); } 这是一个简单的例子如何工作 – user2410644

+0

哎呀抱歉忘了所有这一切。编辑我的文章! – user2410644