QWebEngineView与Windows Aero主题

时间:2018-05-15 14:49:32

标签: python pyqt pyqt5 qwebengineview

如果启用了航空主题,我们在Windows 7上遇到QWebEngineView问题(默认)。一旦渲染了QWebEngineView,整个窗口就会以错误的比例呈现。切换到基本主题时,所有内容都按预期呈现。

我使用的Simpe测试用例:

import sys

from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEngineSettings

app = QApplication(sys.argv)
web = QWebEngineView()
web.load(QUrl("https://www.qt.io/"))
web.show()

sys.exit(app.exec_())

在Chrome中,该页面如下所示: enter image description here

但是在QWebEngineView中,整个窗口被剪切并使用了错误的比例:

enter image description here

更糟糕的是: 在PyQt UI中添加QWebEngineView以这种方式缩放整个UI窗口。

我检查了以下环境变量:

AA_Use96Dpi=False
AA_UseHighDpiPixmaps=False
AA_UseDesktopOpenGL=False
AA_UseOpenGLES=False
AA_UseSoftwareOpenGL=False
AA_ShareOpenGLContexts=True
AA_EnableHighDpiScaling=False
AA_DisableHighDpiScaling=False

另外我尝试在qt.conf中使用0-2的值设置dpiaareness而不做任何更改。

欢迎任何提示/帮助。

由于

1 个答案:

答案 0 :(得分:0)

它指出更新到最后一个英特尔视频卡驱动程序解决了这个问题(不幸的是,这个版本的图形驱动程序不稳定/在其他情况下生成蓝屏,为什么我们使用之前的版本到目前为止)。感谢@eyllanesc提示!

我的结论是在OpenGL(用于嵌入QtWebEngineView)上尽可能长时间切换到另一个框架 - 这对Windows和图形卡驱动程序的支持很差。在QT中,我们无法预料到这个概念在不久的将来会发生变化。背景可以在这里找到:Is there any way to use QtWebEngine without OpenGL?