介绍两种Qt屏幕截图的方法。
方法1
- 接口:
QPixmap QScreen::grabWindow(WId window,
int x = 0,
int y = 0,
int width = -1,
int height = -1)
- 示例:
QScreen *screen = QGuiApplication::primaryScreen();
screen->grabWindow(0).save("screen_shot.jpg", "jpg"); // 0值为整个电脑屏幕WId
- 可以通过设置x,y坐标位置和width,height的大小来截图。
方法2
- 接口:
QPixmap QWidget::grab(const QRect &rectangle = QRect(QPoint(0, 0),
QSize(-1, -1)))
- 示例:
QWidget widget;
widget.grab().save("screen_shot.jpg", "jpg");
- 和QScreen的grabWindow一样可以通过设置坐标位置和窗口的大小来截图。