Для того чтобы во время работы программы пользователь, нажав клавишу F1, мог получить справочную информацию, надо чтобы свойство HelpFile главного окна приложения содержало имя файла справочной системы, а свойство HelpContext числовой идентификатор нужного раздела (рис. 14.6). Вспомните, идентификаторы разделов справочной системы перечислены в разделе [MAP] файла проекта справочной системы.
Рис. 14.6. Свойство HelpFile должно содержать имя файла справки
Файл справочной системы приложения лучше поместить в ту папку, в которой находится файл исполняемой программы.
Для каждого компонента формы, например поля ввода, можно задать свой раздел справки. Раздел справки, который появляется, если фокус находится на компоненте, и пользователь нажимает клавишу F1, определяется значением свойства Heipcontext этого компонента. Если значение свойства HelpContext элемента управления равно нулю, то при нажатии клавиши F1 появляется тот раздел справки, который задан для формы приложения.
Создание справочного файла chm в help and manual
Если в диалоговом окне есть кнопка Справка, то справочная информация выводится по-другому – для кнопки создается процедура обработки события onclick, которая обращением к функции winhelp запускает программу Windows Help (файл Winhlp32.exe). При вызове функции winhelp в качестве параметров указываются: идентификатор окна, которое запрашивает справочную информацию; имя файла справочной системы; константа, определяющая действие, которое должна выполнить программа Windows Help и уточняющий параметр.
Примечание
Идентификатор окна – это свойство Handle формы приложения. Свойство Handle доступно только во время работы программы, поэтому в списке свойств в окне Object Inspector его нет.
Если необходимо вывести конкретный раздел справки, то в качестве параметра, определяющего действие, используется константа HELP_CONTEXT. Уточняющий параметр в этом случае задает раздел справки, который будет выведен на экран.
Ниже, в качестве примера, приведена процедура обработки события Onclick для кнопки Справка (Button4) диалогового окна программы решения квадратного уравнения.
// щелчок на кнопке Справка procedure TForm1.Button4Click(Sender: TObject); begin winhelp(Form1.Handle,’sqroot.hip’,HELP_CONTEXT,1); end;
HTML Help Workshop
Современные программы выводят справочную информацию в Internet-стиле – окно, которое используется для вывода справки, напоминает окно Internet Explorer. И это не удивительно, так как для вывода справочной информации используются компоненты, составляющие основу Microsoft Internet Explorer. Система отображения справочной информации является частью операционной системы, поэтому никакие дополнительные средства для вывода справочной информации не нужны.
Физически справочная информация находится в файлах с расширением .chm. СНМ-файл – это так называемый компилированный HTML-документ. СНМ-файл получается путем компиляции (объединения) файлов, составляющих HTML-документ, который, как правило, состоит из нескольких HTML-файлов.
Создание и добавление справки в Delphi XE3
Процесс преобразования HTML-документа в справочную систему называют компиляцией. Исходной информацией для компилятора справочной системы являются HTML-файлы, файлы иллюстраций и файл проекта. В результате компиляции получается СНМ-файл, содержащий всю справочную информацию.
Наиболее просто создать справочную систему можно при помощи программы Microsoft HTML Help Workshop.
Чтобы создать справочную систему, нужно:
- подготовить файлы справочной информации;
- создать файл проекта;
- создать файл контекста (содержания);
- выполнить компиляцию.
Последние три из перечисленных выше шагов выполняются в программе HTML Help Workshop.
Источник: samoychiteli.ru
DelphiComponent.ru — бесплатно видеоуроки по Delphi, статьи, исходники
Первое, что надо сделать, — сформировать раздел [FILES], который должен включать имена HTML-файлов, содержащих справочную информацию по разделам. Чтобы добавить в раздел [FILES] имя файла, надо щелкнуть на кнопке Add/Remove topic files, затем, в появившемся диалоговом окне Topic Files (рис. 14.28) — на кнопке Add и в появившемся стандартном диалоговом окне Открыть выбрать HTML-файл раздела справки.
Если справочная информация распределена по нескольким файлам, то операцию добавления нужно повторить несколько раз. После того как в диалоговом окне Topic Files будут перечислены все необходимые для создания справочной информации HTML-файлы, нужно шелкнуть на кнопке ОК. В результате этих действий в файле проекта появится раздел [FILES], в котором будут перечислены HTML-файлы, используемые для создания справочной системы (рис. 14.29).
Рис. 14.28. Диалоговое окно Topic Files
Рис. 14.29. В разделе [FILES] перечислены файлы, используемые для создания СНМ-файла
Следующее, что надо сделать, — задать главный (стартовый) раздел и заголовок окна, в котором будет выводиться справочная информация. Текст заголовка и имя файла главного раздела вводятся соответственно в поля Title и Default file вкладки General диалогового окна Options (рис. 14.30), которое появляется в результате щелчка на кнопке Change project options.
Рис. 14.ЗО. Диалоговое окно Options
Содержание справочной системы принято изображать в виде иерархического списка. Элементы верхнего уровня соответствуют разделам, а подчиненные им элементы — подразделам и темам.
Чтобы во вкладку Contents добавить элемент, соответствующий разделу справочной системы, нужно щелкнуть на кнопке Insert a heading, в поле Entry title появившегося диалогового окна Table of Contents Entry (рис. 14.32) ввести название раздела и щелкнуть на кнопке Add. На экране появится окно Path or URL (рис. 14.33).
В поле HTML titles этого окна будут перечислены названия разделов (заголовки HTML-файлов) справочной информации, которая находится во включенных в проект файлах (имена этих файлов указаны в разделе [FILES] вкладки Project). Если вместо названия раздела справочной информации будет указано имя файла, то это значит, что в этом файле нет тега . Выбрав (по заголовку или по имени) нужный файл нужно щелкнуть на кнопке ОК. В результате перечисленных выше действий во вкладке Contents появится строка с названием раздела справочной информации.
Рис. 14.31. Вкладка Contents
Рис. 14.32. Добавление элемента в список разделов
Рис. 14.33. Выбор файла, соответствующего элементу списка разделов
Если нужно изменить значок, соответствующий добавленному разделу, то следует щелкнуть на кнопке Edit selection и, используя список Image index вкладки Advanced окна Table of Contents, выбрать нужный значок (обычно радом с названием раздела или подраздела изображена книжка).
Подраздел добавляется точно так же, как и раздел, но после того как подраздел будет добавлен, нужно щелкнуть на кнопке Move selection right. В результате чего уровень заголовка понизится, т. е. раздел станет подразделом.
Элементы содержания, соответствующие темам справочной информации, добавляются аналогичным образом, но процесс начинается щелчком на кнопке Insert a page.
Иногда возникает необходимость изменить порядок следования элементов списка содержания или уровень иерархии элемента списка. Сделать это можно при помощи командных кнопок, на которых изображены стрелки. Кнопки Move selection up и Move selection down перемещают выделенный элемент списка, соответственно, вверх и вниз. Кнопка Move selection right перемещает выделенный элемент вправо, т. е. делает его подчиненным предыдущему элементу списка. Кнопка Move selection left выводит элемент из подчиненности предыдущему элементу.
В качестве примера на рис. 14.34 приведена вкладка Contents справочной системы программы Квадратное уравнение.
Рис. 14.34. Вкладка Contents содержит названия разделов справочной системы
Источник: delphicomponent.ru
Создание help-файла (справки) в формате CHM для Delphi-приложения для Windows в Dr.Explain
Скачайте дистрибутив программы Dr.Explain в разделе «Загрузить» официального сайта продукта по адресу http://www.drexplain.ru/ и пройдите стандартную процедуру установки программного обеспечения для начала его использования.
Доступно использование бесплатной незарегистрированной версии программного обеспечения без ограничения по времени. Функционал для бесплатной и лицензионной версий Dr.Explain совпадает, однако все изображения в итоговом сформированном в бесплатной версии файле справки будут помечены специальным водяным знаком.
Рис. 1. Мастер установки Dr.Explain
Создание и настройка нового проекта
Для создания нового проекта файла справки с возможностью последующего экспорта в файл формата CHM в Dr.Explain выберите пункт «Создать новый проект» в стартовом окне программы, либо перейдите в пункт «Файл -> Создать» главного меню программы.
Рис. 2. Стартовое окно программы Dr.Explain
Перейдите в пункт меню «Настройки -> Настройки проекта» и в открывшемся диалоговом окне перейдите в раздел «CHM экспорт -> Управление Help ID». Для осуществления последующей привязки проекта Delphi к темам файла справки установите флаг «Экспорт Help ID в CHM». Нажмите кнопку «OK» для применения настроек к проекту.
Рис. 3. Окно «Настройки проекта»
После применения настроек для каждой уже созданной темы и каждой новой создаваемой в дальнейшем теме будет автоматически присвоен уникальный цифровой идентификатор HelpID.
Создание тематических разделов в файле справки
Удобная структура файла справки достигается путем создания тематических разделов на формы и объекты описываемого приложения.
Создайте темы файла справки, перейдя в пункт меню «Настройки -> Добавить тему», или нажмите правой кнопкой мыши на дерево проекта в левой части экрана, после чего в открывшемся меню выберите пункт «Добавить -> Добавить тему». Для полного описания Delphi-приложения создайте темы для каждого его объекта. В таком случае в приложении по нажатию клавиши F1 будет открываться информация об объекте, на котором находится фокус.
Рис. 4. Дерево проекта Dr.Explain
В дереве проекта укажите название созданных тем и определите их порядок, используя соответствующие пункты меню.
Перейдите в нужную тему в дереве проекта и в окне редактора введите содержимое раздела в свободной форме. В окне редактора имеется стандартный функционал для форматирования текста.
Во вкладке «Ключевые слова» укажите набор ключевых слов для поиска по файлу справки. Для того, чтобы ассоциировать ключевое слово с определенной темой, выберите тему в дереве проекта и установите флаг напротив выбранного ключевого слова.
Рис. 5. Ключевые слова
Для создания описания конкретного объекта Delphi-приложения (в том числе и формы в приложении) также можно воспользоваться кнопкой «Схватить экран».
Рис. 6. Окно «Захват проекта»
В открывшемся диалоговом окне нажмите на пиктограмму «Accessible-объект» или «Win32-окно», после чего перейдите в окно приложения Delphi и выберите описываемый в разделе объект одним из указанных способов:
- Нажмите на клавишу PrtScr;
- Нажмите на объект, удерживая нажатой клавишу Ctrl;
- Поочередно кликните двумя кнопками мыши по объекту.
В результате выделения объекта в редакторе раздела будет автоматически создана тема, содержащая скриншоты как самого объекта, так и зависящих от него объектов приложения. Интерфейс редактора позволяет удалять информацию об объектах раздела и менять их местами, не выходя из редактора нажатием одной кнопки.
Рис. 7. Результат выполнения захвата объекта
Настройка значений Help ID
В Dr.Explain существует возможность редактирования значения Help ID. Для изменения значения идентификатора выберите желаемую тему и нажмите на ячейку «Help ID» в окне свойств страницы. Введите свое значение и уберите фокус мыши с поля для применения значения.
Рис. 8. Изменение значения Help ID в окне «Свойства страницы»
Перейдите в пункт меню «Инструменты –> проверка проекта на ошибки» для проверки уникальности измененного Help ID. В случае совпадения этого значения у нескольких тем будет выдано сообщение о дублированных значениях. Для корректного создания и привязки к проекту Delphi файла справки CHM устраните дублирование, изменив одно или несколько значений Help ID, не выходя из окна «Проверка проекта» нажатием на ячейку в поле Значение.
Рис. 9. Окно «Проверка проекта». Дублированные значения Help ID
Экспорт проекта в CHM-файл
По окончании редактирования сохраните проект и перейдите в пункт меню «Настройки -> Экспорт в CHM». Установите флаг «Запустить проверку проекта перед экспортом» для предварительной проверки проекта на корректность.
Установите флаг «Открыть CHM файл» для открытия файла CHM после его создания и установите флаг «Перезаписать молча» для перезаписи существующего проекта без открытия диалогового окна «Сохранение CHM-документа». Нажмите кнопку «Начать экспорт». Лог экспорта будет отображаться в окне «Экспорт в CHM». По окончании экспорта нажмите кнопку «Закрыть».
Рис. 10. Окно «Экспорт в CHM»
Установка пути к CHM-файлу в проекте Delphi
Для загрузки файла справки CHM в проекте Delphi требуется указать путь к этому файлу. Для этого выполните одну из следующих операций (доступно для версий выше Delphi 7):
· Перейдите в пункт меню среды Delphi «Project -> Options» и во вкладке «Application» укажите путь к файлу в поле «Help file».
Примечание: В случае указания полного пути к файлу приложение Delphi, запускаемое на произвольной машине, будет искать файл справки именно в указанной директории, которая может отсутствовать на машине с установленным приложением. Поэтому оптимальное решение – указывать относительный путь к файлу справки.
Рис. 11. Установка относительного пути к файлу справки CHM с помощью GUI Delphi
· Перейдите в пункт меню среды Delphi «Project -> View Source» и в открывшемся окне введите код
Application.HelpFile:=ExtractFilePath(Application.ExeName) + ‘Helpdrexplain.chm’,
где ‘Helpdrexplain.chm’ — относительный путь к файлу справки CHM.
Рис. 12. Программная установка относительного пути к файлу справки CHM
Привязка темы файла справки CHM к форме приложения Delphi
В проектах Delphi имеется возможность указания индивидуального файла справки для каждой из форм проекта. Для этого выполните одно из следующих действий:
· В коде проекта введите строку
HelpFile:=ExtractFilePath(Application.ExeName) + ‘Helpdrexplain.chm’
Рис. 13. Программная установка относительного пути к файлу справки CHM для объекта TForm
· В инспекторе объектов для формы укажите соответствующее значение в поле «HelpFile»
Рис. 14. Установка относительного пути к файлу справки CHM для объекта TForm в окне «Инспектор объекта»
Привязка темы файла справки CHM к объектам приложения Delphi
Формат файла CHM и приложения Delphi позволяют назначить каждому объекту проекта свою тему файла справки, которая будет открываться при нажатии клавиши F1 в случае наличия фокуса на данном объекте. Для этого в Инспекторе объекта в поле «HelpContext» укажите HelpID из созданного файла CHM. В случае, если в файле справки отсутствует тема с HelpID, равным указанному значению «HelpContext», в файле справки будет открыта тема, ассоциированная с родительской формой.
Дополнительные способы вызова CHM-файла из приложения Delphi
Существует несколько альтернативных вариантов вызова справки из приложения Delphi:
· Выполните команду ShellExecute(Application.Handle, ‘open’, ’Help/drexplain.chm’, nil, nil, 0); по нажатию кнопки или другому действию на форме. Предварительно пропишите в блоке Uses расширение ShellAPI. Данное действие откроет главную страницу файла справки. При таком способе вызова файла справки не обязательно осуществлять предварительную ассоциацию файла справки с приложением.
Рис. 15. Вызов файла справки с использованием команды ShellExecute
· Выполните команду Application.HelpCommand(HELP_FINDER,0); по нажатию кнопки или другому действию на форме.
Рис. 16. Вызов файла справки с использованием команды Application.HelpCommand
Особенности интеграции файла справки в приложениях Delphi 7
Для использования файла справки CHM в проектах Delphi версии 7 или ниже необходимо воспользоваться расширениями сторонних разработчиков.
Скачайте и разместите в директории вашего проекта файл *.pas одного из выбранных расширений:
Укажите название подключаемого расширения в любом разделе Uses проекта Delphi.
Рис. 17. Подключение стороннего расширения к проекту Delphi 7
Дальнейшая работа с файлом справки в приложениях Delphi версии 7 или ниже осуществляется описанными выше способами аналогично другим версиям Delphi.
Смотрите также
- Создание help-файла (справки) в формате CHM для MS Access-приложения для Windows в Dr.Explain
- 10 эвристик для оценки удобства использования (юзабилити) вашей документации
- Как написать руководство пользователя программы или сайта — инструкции, советы, помощь, программное обеспечение
Источник: www.drexplain.ru