如何在不打开窗口的情况下使用QWebEngineView获取网页截图

时间:2018-01-09 10:22:40

标签: qt qt5 qwebengineview

我正在寻找一种使用QWebEngineView获取网站屏幕截图的方法。主要目标是开发一个在后台运行的无头screencapture应用程序。

我设法让一个最小的工作示例工作(例如,请参阅this)。但是,这些示例要求通过调用QWebEngineViewQWebEngineView::show()或甚至QWebEngineView::showMinimized()使QWebEngineView::setVisible(true)窗口小部件可见,以便能够截取屏幕截图网站。由于这导致打开一系列窗户,这种解决方案并不完美。

有没有人知道如何使用QWebEngineView截取网站截图而不打开窗口?

1 个答案:

答案 0 :(得分:0)

解决方案相当简单:通过调用QWebEngineView设置Qt::WA_DontShowOnScreen属性,将QWidget::setAttribute(Qt::WA_DontShowOnScreen)窗口小部件配置为不显示在屏幕上。

http://doc.qt.io/qt-5/qt.html#WidgetAttribute-enum