Java Swing-将线路添加到现有面板不';我没有出现
我有一个JPanel,一开始就画了点。我试图在这些点之间添加线,因为我在这些点之间进行遍历。但排队的人并没有出现。如果我使用重绘,上一张图就会消失。下面是我的代码。我需要刷新抽绳代码中的某些内容吗Java Swing-将线路添加到现有面板不';我没有出现,java,swing,Java,Swing,我有一个JPanel,一开始就画了点。我试图在这些点之间添加线,因为我在这些点之间进行遍历。但排队的人并没有出现。如果我使用重绘,上一张图就会消失。下面是我的代码。我需要刷新抽绳代码中的某些内容吗 public void paintComponent(Graphics g) { super.paintComponent(g); doDrawing(g); } //works fine private void doDrawing(Graphics g) { g.drawL
public void paintComponent(Graphics g) {
super.paintComponent(g);
doDrawing(g);
}
//works fine
private void doDrawing(Graphics g) {
g.drawLine(x, y, x, y);
}
//called later from outside, lines do not show up on Panel
public void drwaLine(Point p1, Point p2) {
Graphics g2d = getGraphics();
g2d.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());
}
如果我使用重绘,上一张图就会消失
是的,因为整个组件将重新绘制,而面板所做的第一件事就是绘制其背景以清除所有旧的绘制
有关两种常见的绘画方法,请参见:
这就是为什么不应该使用
getGraphics