Qt多线程截图时访问出错
qt的截图功能,个人感觉比较好用。
QT4:静态函数
QPixmap::grabWidget()
QPixmap::grabWindow()
QT5:非静态函数
QWidget::grab()
QScreen::grabWindow()
QScreen *screen = QGuiApplication::primaryScreen();
screen->grabWindow(0).save("TEM","PNG");
在使用QT4的截图功能时,由于用到了多线程,在线程中截屏,会报一个访问冲突的错误,但是在主线程中就没有问题。说明QT4的截图有使用限制,注意一下。
全屏任意截图思路:
- 截全屏(支持多个屏幕)
- 新建无边框界面将界面全屏
- 选择区域
- 保存图片
参考: