我需要采用常规屏幕截图,但我需要一种方法来忽略打开的应用程序。在屏幕截图中,必须显示常规背景,就像应用程序/窗口未打开一样。
换句话说,我需要一个没有窗口/ aplication(这是presemnt)的截图,但是出现了这个窗口/ aplication背后的内容,忽略了window / ap。
对于获取屏幕截图,我在QT / c ++中有以下代码:
(...)
QScreen *screen = QGuiApplication::primaryScreen();
QPixmap qPImage = screen->grabWindow(0);
QImage qImg = qPImage.toImage();//convert to qImage
(...)
有可能做我需要的吗?
此致 亚历克斯
答案 0 :(得分:1)
可能不是完美的解决方案,但这是我在完全相同的情况下所做的:
void MainWindow::onUpdateClicked()
{
hide();
QTimer::singleShot(45, this, SLOT(updateScreenshotPicture()));
}
void MainWindow::updateScreenshotPicture()
{
screenshotBorders->setPic(QPixmap::grabWindow(QApplication::desktop()->winId()));
show();
}