【发布时间】:2014-11-22 18:53:12
【问题描述】:
我需要让程序有一个三角形,当我点击三角形时消息框会显示“在三角形中”,如果点击外部则“在三角形之外”
有三角形代码和获取点击坐标。但我无法对上面提到的内容做出逻辑。
如果有更好的方法来绘制三角形,请告诉我。 或者如果这项工作在 matlab 中很容易,那么也建议我这样做。
类 1 绘制三角形
public class Triangle extends JComponent
{
public void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
g2.draw(new Line2D.Double (100, 100, 200, 100));
g2.draw(new Line2D.Double (100, 100, 150, 200));
g2.draw(new Line2D.Double (150, 200, 200, 100));
}
}
2 类
public class Tri_Angle extends MouseAdapter {
Tri_Angle(){
addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent me) {
int x= me.getX();
int y= me.getY();
System.out.println("clicked at (" + x + ", " + y + ")");
}
});
}
public static void main(String[] args) {
Triangle component = new Triangle ();
JFrame frame = new JFrame ();
final int FRAME_WIDTH = 250;
final int FRAME_HEIGHT = 250;
frame.setSize (FRAME_WIDTH, FRAME_HEIGHT);
frame.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent me) {
int x= me.getX();
int y= me.getY();
System.out.println("clicked at (" + x + ", " + y + ")");
}
});
frame.setTitle("A Test Frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.add(component);
}
【问题讨论】: