该示例显示了如何对桌面进行屏幕截图。
void Screenshot::shootScreen()
{
/* 获取主屏幕 */
QScreen *screen = QGuiApplication::primaryScreen();
if (const QWindow *window = windowHandle())
screen = window->screen();
...
if (delaySpinBox->value() != 0)
QApplication::beep(); /* 让电脑哔一声 */
/* 获取屏幕内容(QPixmap) */
originalPixmap = screen->grabWindow(0);
...
}
if (!originalPixmap.save(fileName)) {
QMessageBox::warning(this, tr("Save Error"), tr("The image could not be saved to \"%1\".")
.arg(QDir::toNativeSeparators(fileName)));
}
C:\Qt\{你的Qt版本}\Examples\{你的Qt版本}\widgets\desktop\screenshot
https://doc.qt.io/qt-5/qtwidgets-desktop-screenshot-example.html