Qt 5.6 webengine отображает локальный HTML-файл

Я пытаюсь изучить qt webengine, я загрузил qt 5.6 и посмотрел пример того, как отображать простую веб-страницу. Но теперь я хочу узнать, как отображать HTML-страницу, которая хранится локально. Я видел несколько таких примеров: Как отобразить локальный HTML-код в QWebview?

А вроде это для более старого WebKit? В примере для qt он показывает файл main.qml, который указывает на веб-сайт qt.io.

Как я могу указать это на свой локальный HTML-файл? Я разместил qrc: /HTML/index.html, и когда я запускаю свою программу, он говорит, что не могу найти страницу.

Я поместил свой HTML-файл в папку HTML, которая находится в том же каталоге, где находится файл main.qml.

Я новичок в qt и буду признателен за любую помощь, которую смогу получить. Спасибо


person Stan R    schedule 06.02.2017    source источник
comment
QtWebEngine способен на то, что вы описываете, но без MCVE невозможно понять, почему он не работает в вашем конкретном случае.   -  person MrEricSir    schedule 06.02.2017


Ответы (1)


Если ваш HTML-файл находится в той же папке, что и QML-файл, просто используйте имя файла HTML-файла в качестве «URL-адреса» для загрузки.

Относительные URL-адреса в QML относятся к текущему файлу.

Если ваш файл QML встроен в приложение с использованием системы ресурсов Qt, т.е. если вы указываете URL qrc при загрузке основного QML в коде C ++, убедитесь, что файл HTML также добавлен в систему ресурсов.

Если основной файл QML загружается из файловой системы, больше ничего не требуется.

person Kevin Krammer    schedule 06.02.2017
comment
У меня есть свой index.html там же, где у меня есть файлы main.qml, но он все еще не работает. Мне это нравится в моем main.qml: url: qrc: /index.html - person Stan R; 08.02.2017
comment
Как я уже сказал, просто имя файла: url: "index.html" - person Kevin Krammer; 08.02.2017
comment
@KevinKrammer. Я делаю то, что вы предлагаете, и у меня это не работает. - person stian; 10.06.2017