小编raj*_*oor的帖子

单击外部 URL 链接时窗口无法打开新窗口或选项卡

我需要使用 pyQt5 打开一个 URL。该页面有几个打开新窗口的链接。pyQt5 为 URL 打开一个窗口,但在单击应打开新窗口的链接后不执行任何操作。PS我使用的是pyQt5.6

我在 Linux centOs 上尝试过,但没有任何效果。

from PyQt5.QtCore import QUrl
from PyQt5.QtGui import QDesktopServices
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage


class WebEnginePage(QWebEnginePage):
    def acceptNavigationRequest(self, url,  _type, isMainFrame):
        if _type == QWebEnginePage.NavigationTypeLinkClicked:
            return True
        return QWebEnginePage.acceptNavigationRequest(self, url,  _type,      isMainFrame)

class HtmlView(QWebEngineView):
    def __init__(self, *args, **kwargs):
        QWebEngineView.__init__(self, *args, **kwargs)
        self.setPage(WebEnginePage(self))

if __name__ == '__main__':
    import sys

    app = QApplication(sys.argv)
    w = HtmlView()
    w.load(QUrl("https://gmail.com"));
    w.show()
    sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

我希望它在任何网页上单击 target='_blank' 时都会打开一个新窗口。

python pyqt python-3.x pyqt5 qwebengineview

3
推荐指数
1
解决办法
1523
查看次数

标签 统计

pyqt ×1

pyqt5 ×1

python ×1

python-3.x ×1

qwebengineview ×1