Собрать проект близкий к туториалу с модификациями в среде Qt

5 000 руб. за проект
21 октября 2022, 12:19 • 3 отклика • 48 просмотров
Оттолкнуться от:
https://www.walletfox.com/course/qhelpengineexample.php (файлы документации можно быстро генерировать с помощью helpndoc).

Отличия:

1) можно без отрисовки фигур (достаточно сделать парочку дополнительных вкладок приложения рядом с Item и Help для разнообразия и проверки возможностей — например, Справка, Рабочая область 1, Рабочая область 2).
2) не нужно делить общее окно на рабочую и справочную половины (при запуске приложения требуется только рабочая область с вкладками по другим разделам, а справку всегда выводить в отдельном окне по нажатию на f1 или по клику на вкладку Справка).
3) добавить возможность отображения кастомной стартовой странички справки в зависимости от текущего открытого окна (Item, Help и других заданных выше).

---

Грубо говоря, в примере адрес стартовой странички документации задавался следующим образом:


HelpBrowser *textViewer = new HelpBrowser(helpEngine);

textViewer->setSource(

QUrl("qthelp://walletfox.qt.helpexample/doc/index.html"));



а после доработки “index” будет меняться в строке адреса в зависимости от контекста (рабочей области / открытой вкладки) посмотреть, что лучше подойдет для решения этой задачи, но если получится сделать несколько реализаций, еще лучше.

---

если свои варианты есть сходу, велком, а так вот идеи на подумать:

а) например, использовать setContextHelp или setUserData для присваивания идентификатора рабочей области и сопоставления его с соответствующим Help ID в справке (в helpndoc можно установить его до компиляции qhc и qch файлов) для формирования ссылки

б) либо использовать setProperty и вылавливать его значение для формирования ссылки

в) либо в коде главного окна справки пробовать что-то вроде, чтобы идентифицировать рабочую область
QAction act = qobject_cast<QAction>(sender());
int index = act->data().toInt();
но тогда нужно понимать, что index не меняется и его можно установить в файле справки для соответствующих параметров Help Context или Help ID, за счет этого сразу же линковать на нужную страничку при запуске справки

---

в коде желательно прописать комментарии

Отзывы
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Заказчик
 
1 год назад
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Фрилансер
Хороший заказчик, вежливый, всегда на связи. Оплатил своевременно, цена хорошая для такой работы.
1 год назад