gpt4 book ai didi

java - 尝试在截取屏幕截图之前将 Swing 框架置于前面,但出现伪影

转载 作者:行者123 更新时间:2023-11-30 05:15:57 25 4
gpt4 key购买 nike

我的应用程序的一部分可以截取某个窗口的屏幕截图,但在此之前我想将该窗口置于前面。这在我的 Mac 机器上工作得很好,但当我在 Windows XP 上并行测试它时,屏幕截图总是在重叠窗口所在的区域出现灰色区域。似乎总是在我想要位于顶部的窗口被转移到顶部时截取屏幕截图。我尝试过同时使用:

     frame.setVisible(true);
and
frame.setAlwaysOnTop(true);

有没有人有一个合理的解决方案来解决这个问题?

最佳答案

如果您尝试截取 Java 绘制的窗口 w 的屏幕截图,您可以要求它在

上绘制自身
BufferedImage bi = new BufferedImage(
w.width, w.height, BufferedImage.TYPE_INT_RGB);
Graphics g = bi.getGraphics();

通过调用 Windows 的 paint(g) 方法。然后您可以将 BufferedImage 保存到文件中。如果您要捕获外部 window ,那么我相信奥斯卡·雷耶斯已经给了您所有答案。

关于java - 尝试在截取屏幕截图之前将 Swing 框架置于前面,但出现伪影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1280333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com