绘制的图像不会留在屏幕上

时间:2010-11-21 17:25:17

标签: java swing drawing

我使用getGraphics和drawLine和fillOval命令绘制到JPanel,但是在运行程序时它非常有气质。但是,当我调试它时,它每次都会绘制。

draw.drawPoints(drawing.getGraphics(), xCoord, yCoord);

呼叫:

public void drawPoints (Graphics g, int x, int y){
    g.setColor(Color.red);
    g.fillOval(x, y, 5, 5);
}

编辑:它不会总是画画。大部分时间都是空白。

2 个答案:

答案 0 :(得分:3)

  

我使用getGraphics

绘制到JPanel

您不应该通过从JPanel获取Graphics对象来在drawing.getGraphics()上绘制内容。

相反,您应该覆盖paintComponent(Graphics g)方法并在那里进行绘画。

一个让你入门的简单例子:

container.add(new JPanel() {
    public void paintComponent(Graphics g) {
        drawPoints(g, xCoord, yCoord);
    }
});

答案 1 :(得分:0)

每次重新绘制对象时都需要这样做。