Как отобразить локальный HTML в QWebview? - PullRequest
10 голосов
/ 15 марта 2012

Я подозреваю, что это настолько просто, что никто не удосужился это задокументировать.

Я хочу написать файл HTML из моей программы и затем загрузить этот файл в объект QWebview.Когда у меня открыт QtCreator, я могу перейти к файлу в блоке URL справа, и он отображается в QtCreator.Когда я компилирую и запускаю программу, окно становится белым и пустым.

Я также не хочу, чтобы каталог был жестко закодирован, я хочу, чтобы он использовал текущий каталог.два вопроса:

  1. Как мне написать ???в следующем, чтобы объект QWebview с именем «reportView» отображал мой локальный файл?

ui->reportView->load(QUrl("???"));

Почему объект QWebview остается пустым?Я подозреваю, что при подключении к Документам Google возникла проблема:
QSslSocket: cannot call unresolved function SSLv23_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error

Спасибо.

Ответы [ 2 ]

19 голосов
/ 26 января 2014

Из Интернета

webView->load(QUrl("http://google.de"));

Из ресурса

webView->load(QUrl("qrc:///sample.html"));

Из файловой системы

webView->load(QUrl("file:///C:/sample.htm"));

Нет необходимости QUrl::FromLocalFile, нет необходимости webView->show()

Добро пожаловать!

9 голосов
/ 15 марта 2012

Вы можете использовать QUrl::fromLocalFile, который будет создавать URL-адрес, подобный этому "file:///path/to/file.html" из абсолютного пути к файлу.

Google использует SSL, и если вы работаете в Windows, вам нужновручную установите OpenSSL и скопируйте его библиотеки DLL в системный каталог Windows, в каталог bin установки Qt или в вашу конечную исполняемую папку.

На других платформах уже должен быть установлен OpenSSL илименеджер пакетов для его установки.

...