поймайте щелчки ссылки в QtWebView и открытый в браузере по умолчанию

Я открываю страницу в QtWebView (в PyQt, если это имеет значение), и я хочу открыть все ссылки в браузере системного значения по умолчанию. Т.е. щелчок по ссылке не должен изменять сайт в QtWebView, но это должно открыть его с браузером по умолчанию. Я хочу лишить возможности на пользователя изменять сайт в QtWebView.

Как я могу сделать это?

Спасибо, Albert

7
задан Albert 6 July 2010 в 17:08
поделиться

1 ответ

Что делает это:

import sys, webbrowser
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *

app = QApplication(sys.argv)
web = QWebView()

web.load(QUrl("http://www.az2000.de/projects/javascript-project/"))
web.page().setLinkDelegationPolicy(QWebPage.DelegateAllLinks)


def linkClicked(url): webbrowser.open(str(url.toString()))
web.connect(web, SIGNAL("linkClicked (const QUrl&)"), linkClicked) 


web.show()

sys.exit(app.exec_())
9
ответ дан 7 December 2019 в 03:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: