0

我正在研究一个视觉排序算法项目,我正在将它们绘制在 JPanel 中:

public void paint(Graphics g) {
    super.paint(g);
    g.setColor(Color.WHITE);
    for (int i = 0; i < array.length; i++) {
        g.fill3DRect(i * barWidth, height, barWidth, -array[i], true);
    }
    g.dispose();
}

我编译了我的程序并在我的 Windows 7 计算机上运行了 jar,我得到了正确绘制的条形图:

好的

我在另一台 Windows 7 计算机和 Mac 上对此进行了测试,它绘制的条不正确:

坏的

为什么会这样?我该如何解决这个问题?

4

1 回答 1

3
g.dispose();

仅调用dispose()您的代码创建的图形实例。这个由 JRE 提供。

于 2012-09-01T01:34:48.287 回答