Ste*_*tef 3 python qt qwebview
这是我的问题:我想QWebView在Python中加载一个本地html文件.编辑:我使用PySide作为Qt包.
我的代码:
class myWindow(QWidget):
def __init__(self, parent=None):
self.view = QWebView(self)
filepath = "file://" + os.path.join(os.path.dirname(__file__), 'googlemap.html')
self.view.load(QUrl(filepath))
Run Code Online (Sandbox Code Playgroud)
这只是向我展示了一个空白的小部件.如果我改变
self.view.load(QUrl(filepath)
Run Code Online (Sandbox Code Playgroud)
通过
self.view.load(QUrl("http://www.google.com/"))
Run Code Online (Sandbox Code Playgroud)
它工作正常.
但是,该文件显然位于良好的目录中,我可以直接使用浏览器打开相同的文件.
编辑2:我的Raspberry Pi 2更新后出现问题(运行上面的代码)
两点意见:
QUrl.fromLocalFile(path)所以这样的事情
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "aa.html"))
local_url = QUrl.fromLocalFile(file_path)
browser.load(local_url)
Run Code Online (Sandbox Code Playgroud)
应该管用.
完整示例:
from PyQt4.QtWebKit import QWebView
from PyQt4.QtGui import QApplication
from PyQt4.QtCore import QUrl
import sys
import os
app = QApplication(sys.argv)
browser = QWebView()
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "aa.html"))
local_url = QUrl.fromLocalFile(file_path)
browser.load(local_url)
browser.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4980 次 |
| 最近记录: |