您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – PySide如何获得QWebInspector相同的窗口

5b51 2022/1/14 8:20:48 python 字数 3651 阅读 482 来源 www.jb51.cc/python

我刚刚开始进入Qt领域(来自PyGTK)而我正在使用PySide.所以我在another answer here on stack exchange上找到了这个很好的例子.import sys from PySide.QtCore import * from PySide.QtGui import * from PySide.QtWebKit import

概述

我刚刚开始进入Qt领域(来自PyGTK)而我正在使用PySide.所以我在another answer here on stack exchange上找到了这个很好的例子.

import sys
from PySide.QtCore import *
from PySide.QtGui import *
from PySide.QtWebKit import *

app = QApplication(sys.argv)

web = QWebView()
web.settings().setAttribute(
  QWebSettings.WebAttribute.DeveloperExtrasEnabled,True)
# or globally:
# QWebSettings.globalSettings().setAttribute(
#     QWebSettings.WebAttribute.DeveloperExtrasEnabled,True)

web.load(QUrl("http://www.google.com"))
web.show()

inspect = QWebInspector()
inspect.setPage(web.page())
inspect.show()

sys.exit(app.exec_())

我的问题如下,如何让检查员出现在同一个窗口而不是新窗口?我知道我需要将QWebInspector添加到主窗口内的另一个小部件(例如vBox),我想知道的是如何将该事件连接到上下文菜单“Inspect”触发器的信号.在PyGTK中我需要使用.connect()但是我找不到适合此特定操作的SIGNAL.

谢谢你的时间伙计们

一个稍微棘手的问题是如何在检查器显示后再次隐藏它,因为似乎没有相应的上下文菜单项.

下面的演示脚本只是创建一个键盘快捷方式来隐藏/显示检查器:

from PySide import QtGui,QtCore,QtWebKit

class Window(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.view = QtWebKit.QWebView(self)
        self.view.settings().setAttribute(
            QtWebKit.QWebSettings.WebAttribute.DeveloperExtrasEnabled,True)
        self.inspector = QtWebKit.QWebInspector(self)
        self.inspector.setPage(self.view.page())
        self.inspector.hide()
        self.splitter = QtGui.QSplitter(self)
        self.splitter.addWidget(self.view)
        self.splitter.addWidget(self.inspector)
        layout = QtGui.QVBoxLayout(self)
        layout.addWidget(self.splitter)
        QtGui.QShortcut(QtGui.QKeySequence('F7'),self,self.handleShowInspector)

    def handleShowInspector(self):
        self.inspector.setShown(self.inspector.isHidden())

if __name__ == '__main__':

    import sys
    app = QtGui.QApplication(sys.argv)
    window = Window()
    window.view.load(QtCore.QUrl('http://www.google.com'))
    window.show()
    sys.exit(app.exec_())

总结

以上是编程之家为你收集整理的python – PySide如何获得QWebInspector相同的窗口全部内容,希望文章能够帮你解决python – PySide如何获得QWebInspector相同的窗口所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶