如何在JFrame中的两个标签之间绘制箭头/线?

时间:2012-05-01 07:31:33

标签: java swing jframe

  

可能重复:
  How to draw a directed arrow line in Java?

我正在尝试在JFrame中的两个标签之间绘制一条线/箭头。我知道标记为(x1,y1)(x2,y2)的这两个标签的特定坐标。如何在它们之间画一条线/箭头?。

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

你实际上应该使用一些开发平台IDE,比如Netbeans或一些摇摆专家IDE,因为它们在开发过程中会帮助你很多。
使用IDE,您可以拖放操作,因此它会自动生成代码 不仅画线,而且你可以轻松完成所有工作。 试试吧......

答案 2 :(得分:-1)

它并不好,但它正在运行:

public class Example extends JFrame {

private static JLabel a;
private static JLabel b;

public static void main(String[] args) {

    Example example = new Example();

    JPanel panel = new JPanel();
    panel.setLayout(null);

    a = new JLabel("a");
    a.setBounds(50, 50, 10, 10);

    b = new JLabel("b");
    b.setBounds(150, 150, 10, 10);

    panel.add(a);
    panel.add(b);

    example.getContentPane().add(panel);

    example.setGlassPane(new MyGlas());
    example.getGlassPane().setVisible(true);

    example.setSize(400, 400);

    example.setVisible(true);
}

public static class MyGlas extends JComponent {

    public void paint(Graphics g) {

        Rectangle aBounds = a.getBounds();
        Rectangle bBounds = b.getBounds();

        g.drawLine(aBounds.x, aBounds.y, bBounds.x, bBounds.y);
    }
}
}