Russian Qt Forum
Ноябрь 22, 2024, 12:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не работают ссылки в QWebView  (Прочитано 38592 раз)
sergs
Гость
« : Сентябрь 24, 2018, 07:35 »

Хочу интегрировать веб-сервис в свое приложение. Для этого открывают HTML файл c JS кодом в QWebView, но почему-то не работает переход по ссылкам. Этот же HTML нормально открывается и работает в обычном браузере. Вот тестовый код
Код:
import os
import sys

from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebKit import QWebSettings
from PyQt5.QtWebKitWidgets import QWebView, QWebInspector, QWebPage

filePath = os.path.join(os.path.dirname(__file__), 'index.html')

app = QApplication(sys.argv)

webView = QWebView()
QWebSettings.globalSettings().setAttribute(QWebSettings.PluginsEnabled, True)
QWebSettings.globalSettings().setAttribute(QWebSettings.LocalContentCanAccessRemoteUrls, True)
webView.page().settings().setAttribute(QWebSettings.DeveloperExtrasEnabled, True)
inspector = QWebInspector()
inspector.setPage(webView.page())

content = ''
with open(filePath, 'rb') as f:
    content = f.read()

webView.setContent(content)

webView.show()

app.exec_()

Вот злополучный HTML

Код:
<html>
  <head>
    <script type="text/javascript" src="https://cdn.3dmapping.cloud/18.1.4/javascript/orbitgt_3dm_sdk.js"></script>
  </head>

  <body >
    <div id="app">

    <script type="text/javascript">
      var viewer;

      function handleReady() {
        viewer.setSize(600,400);
      }

      function handleDOMReady() {
        var applicationName = "QGIS Orbit plugin";
        var appElement = document.getElementById("m3dviewer");
        viewer = new orbitgt.mapping3d.sdk.viewer.SDKViewer(applicationName, appElement);
        viewer.isReady.then(handleReady);
      }

      document.addEventListener("DOMContentLoaded", handleDOMReady);
    </script>

    <div id="m3dviewer"/>
  </body>
</html>

Qt/PyQt 5.10.1, Python 3.6.5

В чем может быть проблема?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.075 секунд. Запросов: 20.