如何让 mouselistener 注意到假想三角形内的点击?
how to get mouselistener notice clicks inside an imaginary triangle?
我在网格上有三个点。当单击这个由三个点组成的假想三角形内的区域上的一个点时,我希望我的鼠标监听器提醒我。怎么做??我不想使用形状 class 或任何东西,因为它是一个假想的三角形。有任何想法吗 ?谢谢!
下面的代码应该可以完成您想要做的事情。
private static final Polygon POLY = new Polygon();
static {
POLY.addPoint(x1, y1); // first point
POLY.addPoint(x2, y2); // second point
POLY.addPoint(x3, y3); // third point
}
@Override
public void mouseClicked(final MouseEvent e) {
if (POLY.contains(e.getX(), e.getY())) {
// notify user
}
}
请注意,即使您拥有的三角形是 "imaginary.",您也需要定义某种多边形,这样 Java 就知道形状内部可能包含哪些点。
我在网格上有三个点。当单击这个由三个点组成的假想三角形内的区域上的一个点时,我希望我的鼠标监听器提醒我。怎么做??我不想使用形状 class 或任何东西,因为它是一个假想的三角形。有任何想法吗 ?谢谢!
下面的代码应该可以完成您想要做的事情。
private static final Polygon POLY = new Polygon();
static {
POLY.addPoint(x1, y1); // first point
POLY.addPoint(x2, y2); // second point
POLY.addPoint(x3, y3); // third point
}
@Override
public void mouseClicked(final MouseEvent e) {
if (POLY.contains(e.getX(), e.getY())) {
// notify user
}
}
请注意,即使您拥有的三角形是 "imaginary.",您也需要定义某种多边形,这样 Java 就知道形状内部可能包含哪些点。