总的来说,我希望将显示的 JPanel 绘制到 bufferedImage 上并将其保存到文件中。但是我很难理解如何引用我正在绘制的 JPanel。
我的类扩展了 JPanel,我正在绘制它,但我从未明确定义过 JPanel 对象,除非我猜在我的 main 方法中(当我将它添加到 JFrame 时),但这显然是在不同的类中。如何引用我在扩展 JPanel 的类中隐式绘制的 JPanel,以便我可以将其作为参数传递给:
public static BufferedImage createImage(JComponent component)//<---我想在这里传递我的JPanel来创建一个缓冲图像,然后使用ImageIO.write()来保存文件。{ 维度 d = component.getSize();
if (d.width == 0 || d.height == 0)
{
d = component.getPreferredSize();
component.setSize( d );
}
Rectangle region = new Rectangle(0, 0, d.width, d.height);
return ScreenImage.createImage(component, region);
}
我希望这个问题是有道理的。我知道我听起来像个新手,这是因为我是。请帮我。谢谢!