pyqt QWebEngineView显示图片示例
时间: 2023-07-04 17:15:24 浏览: 81
以下是一个基于 PyQt5 的 QWebEngineView 显示图片的示例代码:
```python
from PyQt5.QtCore import QUrl
from PyQt5.QtGui import QImage
from PyQt5.QtWidgets import QApplication, QMainWindow, QWebEngineView
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("QWebEngineView Display Image Example")
self.setGeometry(100, 100, 800, 600)
# 创建 QWebEngineView
self.web_view = QWebEngineView(self)
self.setCentralWidget(self.web_view)
# 加载 HTML 内容,包括一个 img 标签
html_content = "<html><body><img src='image.jpg'></body></html>"
self.web_view.setHtml(html_content)
# 将图片加载到 img 标签中
image = QImage("image.jpg")
self.web_view.page().runJavaScript(
f"document.querySelector('img').src = '{image.toDataUrl()}';"
)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
这个示例中,我们先创建一个 QWebEngineView,然后加载一个包含 img 标签的 HTML 内容。接着,我们通过 QImage 将图片加载到程序中,并使用 QWebEngineView 的 runJavaScript 方法将图片加载到 img 标签中。
需要注意的是,这个示例中的图片必须与程序在同一个目录下,或者使用绝对路径指定图片的位置。
阅读全文