![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
4ert |
![]()
Сообщение
#1
|
![]() Новичок Группа: Новичок Сообщений: 5 Регистрация: 10.2.2009 Пользователь №: 542 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
В общем, дело такое: достаю html-код из QHelpEngine:
В url - адрес страницы qthelp'а - qthelp://helpsystem/doc/index.html, например. Все достается нормально, передаю в TextBrowser:
Текст выдается на ура, а вот картинки... =) Как достать картинки из этих QtCompressedHelp-файлов? =) Может быть, следует использовать что-то вместо TextBrowser? P.S. Пожалуйста, не предлагайте альтернативный варианты отображения справки в QtAssistant, он мне не подходит =)
Причина редактирования: используй тэг code, вместо codebox
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
4ert, может картинки там отсутствуют, лежат себе в отдельном каталоге?
|
|
|
ViGOur |
![]()
Сообщение
#3
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
4ert, глянь Simple Text Viewer Example, там вроде описано то, что тебе нужно.
|
|
|
4ert |
![]()
Сообщение
#4
|
![]() Новичок Группа: Новичок Сообщений: 5 Регистрация: 10.2.2009 Пользователь №: 542 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата 4ert, может картинки там отсутствуют, лежат себе в отдельном каталоге? Все дело в том, что когда создается Qt Compressed Help файл, в него, наряду с html'ями засовываются все вспомогательные файлы: css, картинки, текстовые файлы и тд. Получается один файл со всем необходимым для отображения помощи =) В классе QHelpEngineCore есть функция, которая возвращает содержимое файла по url - QByteArray fileData ( const QUrl & url ) const естесственно, когда передаешь код html-файла, полученный таким образом, QTextBrowser'у, он ищет картинки совсем не в файле помощи =) Цитата 4ert, глянь Simple Text Viewer Example, там вроде описано то, что тебе нужно. спасибо, но тут описано как раз то, как использовать QtAssistant =) |
|
|
4ert |
![]()
Сообщение
#5
|
![]() Новичок Группа: Новичок Сообщений: 5 Регистрация: 10.2.2009 Пользователь №: 542 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Господа, вопрос снят =)
Нашел следующий способ решить эту проблему: при старте программы QtCompressedHelp-файл распаковывается в /tmp, а там уж QTextBrowser'ом все отлично просматривается =) Код распаковки: CODE QList<QUrl> fileList = helpEngine->files("helpsystem",QStringList(),QString());//создаем список файлов QDir docDir("/tmp");//создаем директорию для документации if (docDir.mkdir("/tmp/doc")) cout<<"directory made"<<endl; QFile docFile; for (int i=0;i<fileList.count();i++)//перемещаемся по списку файлов... { docFile.setFileName("/tmp"+fileList[i].path());//...устанавливаем имя файла... if (docFile.open(QIODevice::ReadWrite)) { docFile.write(helpEngine->fileData(fileList[i]));//...получаем его из HelpEngine'а и записываем docFile.close(); } } Код открытия страницы в браузере: CODE browser->setSource("/tmp/"+url.path()); спасибо за внимание и понимание =) |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 18.2.2025, 17:16 |