How to set the size of browser using QtWebKit

爷,独闯天下 提交于 2019-12-03 08:41:42

I tested this, the window resizes itself after loadFinished is emitted:

import sys 
from PySide.QtCore import QUrl, QSize
from PySide.QtGui import QApplication, QMainWindow, QWidget
from PySide.QtWebKit import QWebView


class Browser(QMainWindow):

    def __init__(self):
        QMainWindow.__init__(self)
        self.resize(300, 300)
        self.web_view = QWebView()
        self.setCentralWidget(self.web_view)

        self.web_view.loadFinished.connect(self._load_finished)

    def _load_finished(self):
        frame = self.web_view.page().mainFrame()
        self.web_view.page().setViewportSize(frame.contentsSize())
        self.resize(frame.contentsSize())
        html_data = frame.toHtml()


if __name__ == '__main__': 
    app = QApplication(sys.argv) 
    browser = Browser() 
    r = QUrl("http://www.yahoo.com")
    browser.web_view.load(r)
    browser.show()
    app.exec_()
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!