0

我有一个画布,它在一个paintComponent()方法中绘制所有内容。

是否可以在外部绘制paintComponent(而不在内部调用方法paintComponent?)

如果是这样,你怎么做呢?

4

2 回答 2

2

这取决于你的意思以及你为什么需要它。例如,可以创建一个BufferedImage,获取Graphics2D对象,Graphics.paint()应该在图像上的所有内容,然后将图像放入JLabel.

但是由于我不知道您要实现什么(与您要做什么相反),所以我不知道该答案是否解决了未说明的问题。

于 2011-05-08T07:23:36.040 回答
-1

我发现了如何解决这个问题。

我所做的是让 JPanel 成为我的 JFrame 类的内部类。

在 JPanels paintComponent 中,我让它从外部类调用一个方法,该方法通过传递 paintComponents Graphics2D 对象对图形进行了一些更新。

这使我可以根据需要在paintComponent 的“外部”进行绘制。

于 2011-05-08T08:57:52.583 回答