5

我使用 java repaint 方法,它会重新绘制,但只有当我单击画布或调整面板大小时才能看到更新。我怎样才能解决这个问题 ?是什么原因造成的?

4

3 回答 3

15

您需要调用方法 revalidate()。这会强制布局管理器更新/重绘其所有组件。

于 2009-06-11T06:35:39.103 回答
2

repaint() 实际上并不是重新绘制,它只是请求重新绘制组件。

于 2009-06-11T07:40:15.673 回答
1

简单地从您要绘制的组件中获取 Graphics 对象可能会有所帮助。然后只需在 Graphics 对象上调用一个绘制方法。例如:

g = component.getGraphics(); 
draw(g);
于 2012-01-08T08:07:06.383 回答