我希望参考我创建的JPanel

时间:2012-04-05 01:08:32

标签: object reference jpanel bufferedimage

总的来说,我希望将显示的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);
}

我希望这个问题有道理。我知道我听起来像个新手,因为我是。请帮我。谢谢!

1 个答案:

答案 0 :(得分:1)

我认为

createImage(YourClassName.this)

作品