gpt4 book ai didi

java - 如何从 JFrame 屏幕截图中删除标题栏?

转载 作者:行者123 更新时间:2023-11-30 06:36:42 25 4
gpt4 key购买 nike

我正在通过“双缓冲”方法捕获 JFrame 的屏幕截图图像,如下所示:

public BufferedImage getScreenshot() {      
java.awt.Dimension dim = this.getPreferredSize();
BufferedImage image = new BufferedImage(dim.width, dim.height, BufferedImage.TYPE_INT_RGB);
this.paint(image.getGraphics());
return image;
}

其中 this 扩展了 JFrame。我得到的图像在标题栏所在的顶部有一个空白条。在没有为标题栏分配额外空间的情况下捕获 JFrame 内容图像的最直接方法是什么?

最佳答案

您应该能够使用 Screen Image类(class)。只需将框架的内容 Pane (如果有菜单,则为根 Pane )指定为您想要其图像的组件。

或者您的基本代码应该可以工作,同样只需将内容 Pane (或根 Pane )指定为您要绘制的组件,而不是框架本身。

关于java - 如何从 JFrame 屏幕截图中删除标题栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4515902/

25 4 0