QWebEngineView 适用于 Windows,但 Pyside2 中的 OSX 上的灰色空白页面
Posted
技术标签:
【中文标题】QWebEngineView 适用于 Windows,但 Pyside2 中的 OSX 上的灰色空白页面【英文标题】:QWebEngineView works on Windows but grey blank Page on OSX in Pyside2 【发布时间】:2020-06-28 07:18:33 【问题描述】:我创建了一个简单的示例,它表明在 Windows 中运行相同的代码可以按预期工作,但在 OSX 上显示的是深灰色页面。有什么想法吗?
from PySide2 import QtCore, QtGui, QtWidgets
from PySide2.QtCore import QUrl
from PySide2.QtWebEngineWidgets import QWebEnginePage, QWebEngineView
class MainWindow(QtWidgets.QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.webEngineView = QWebEngineView()
self.setCentralWidget(self.webEngineView)
initialUrl = "https://www.google.com"
self.webEngineView.load(QUrl(initialUrl))
self.webEngineView.load(initialUrl)
mainWin = MainWindow()
mainWin.show()
【问题讨论】:
你用的是什么版本的pyside2?尝试更新它:python -m pip install --upgrade pyside2
这是随 Autodesk Maya (Python2) 提供的
嗯,可能是 Maya 导致了错误。
尝试调整窗口大小,强制其呈现。
【参考方案1】:
Autodesk Maya 2020
中的macOS 10.15.5 Catalina
中的以下代码工作正常:
因此,如果它在 Windows 中无法正常工作,您需要升级您的 PySide2
库!
from PySide2.QtCore import QUrl
from PySide2.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
from PySide2 import QtCore, QtGui, QtWidgets
class MainWindow(QtWidgets.QMainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.webEngineView = QWebEngineView()
self.setCentralWidget(self.webEngineView)
initialUrl = "https://www.autodesk.com"
self.webEngineView.load(QUrl(initialUrl))
self.webEngineView.load(initialUrl)
mainWin = MainWindow()
mainWin.show()
附言
如果您仍然遇到此问题,请从头开始重新安装 Maya。
【讨论】:
您在 Maya 的脚本编辑器中运行它并且它启动得非常好? 是的,我是从脚本编辑器(Maya 学生版)启动的。 这很奇怪,我的意思是我也使用了学生版,而 PySide2 指向/Applications/Autodesk/maya2019/Maya.app/Contents/Frameworks/Python.framework/Versions/Current/lib/python2.7/site-packages/PySide2/__init__.pyc #
出于某种原因,窗口对我来说总是灰色的。
然后删除所有 Maya 文件夹并从头开始安装。
我已经在多台 Mac 上使用 Catalina 10.15.12 进行了测试,它始终是灰色页面。以上是关于QWebEngineView 适用于 Windows,但 Pyside2 中的 OSX 上的灰色空白页面的主要内容,如果未能解决你的问题,请参考以下文章
PyQt5 window.close() 不会关闭窗口,但 window.open() 工作正常
使用 wrld.js 时出现 QWebEngineView “Access-Control-Allow-Headers”错误
PyQt5 等效于 QtWebEngineWidgets.QWebEngineView() 的 QtWebKitWidgets.QWebView.page.mainFrame()?
window.navigate 仅适用于 Internet Explorer