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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО]Html и javascript в ресурсах  (Прочитано 5154 раз)
Larry
Гость
« : Январь 05, 2016, 14:18 »

Добрый день.
Подскажите пожалуйста, как можно загрузить html и javascript из ресурсов:
Код:
load(QUrl::fromLocalFile(":/html/maps/osm.html"));
так не хочет...
« Последнее редактирование: Январь 06, 2016, 16:29 от Larry » Записан
joffadark
Гость
« Ответ #1 : Январь 05, 2016, 14:56 »

Можно просто загрузить HTML / js как файл и использовать setHTML(...) у WebView;

Код
C++ (Qt)
QFile template_header_file(":/Resources/Html/template_header.html");
 
if (!template_header_file.open(QIODevice::ReadOnly))
 return;
 
QString template_header = template_header_file.readAll();
ui->webView->setHtml(template_header);
Записан
Larry
Гость
« Ответ #2 : Январь 05, 2016, 15:13 »

Спасибо. Попробовал, но не хочет загружаться...
Записан
Bepec
Гость
« Ответ #3 : Январь 05, 2016, 20:35 »

Мб у вас проблема что у вас жабаскрипт тупо не включен в вебвью?
Записан
Larry
Гость
« Ответ #4 : Январь 06, 2016, 09:46 »

Так с внешней загрузкой все работает, т.е. загружается html и из него подгружается js...
Записан
Larry
Гость
« Ответ #5 : Январь 06, 2016, 12:33 »

Перенес html файл в другой ресурс (находился в ресурсе "script.qrc"), то удалось с помощью QWebView->setHtml() загрузить его, но js не подгружается, хотя положил его там же в ресурс. Или надо в html тоже прописывать путь к нему, как к ресурсу? Т.е.:
Код:
<script src = ":/maps/osm_map.js">
?
Записан
Bepec
Гость
« Ответ #6 : Январь 06, 2016, 14:31 »

ааа, всё правильно я тоже с такой проблемой сталкивался когда то.

Загрузчик джавы и прочих гадостей пытается их достать по пути нахождения основного файла. А т.к. для ресурсов это не прокатывает, он просто получает отлуп "такого файла не существует".

Я обошёл копированием кода непосредственно в html. Так же рассматривался вариант копирования файлов во временный каталог и открытия оттуда.
Записан
Larry
Гость
« Ответ #7 : Январь 06, 2016, 16:23 »

Спасибо, значит буду сохранять js во временный каталог...
Записан
MaxoBik
Гость
« Ответ #8 : Январь 07, 2016, 02:43 »

Вам нужно указать протокол, т.е. для ресурсов это qrc, а уже webkit его обработает, т.е.:

Цитировать
<script src = "qrc:/maps/osm_map.js">
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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