Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4
Кент Рейсдорф. BORLAND C++BUILDER. Страница 401
String filename = GetHelpFileName(); // функция, определяемая
// пользователем
Application->HelpFile = filename;
При желании вы можете изменять свойство HelpFile во время выполнения программы, например, чтобы подключать различные справочные файлы (хотя это применяется не очень часто). Как только вы задали имя справочного файла, можно переходить к фактической реализации справочной системы.
Добавление поддержки клавиши F1
Чтобы добавить поддержку F1 для форм и компонентов, вам нужно только установить свойство HelpContext так, чтобы его значение совпадало с идентификатором контекста в справочном файле, a VCL возьмет его из этого свойства. Убедитесь в том, что вы присвоили имя справочного файла свойству HelpFile класса Application, а сам справочный файл содержит правильные идентификаторы контекста. После этого все будет работать без вашего участия.
Включение поддержки справочного файла в меню
Дополнительно к поддержке клавиши F1, большинство приложений имеет один или два пункта в меню Help (действительно, где же им еще быть?), с помощью которых можно запустить WinHelp. Обычно здесь находится пункт меню Contents (Содержание). Выбор этого пункта выведет страницу содержания справочного файла. Страница содержания обычно служит главной страницей справочного файла. В дополнение к пункту Contents, некоторые приложения имеют в меню Help пункт Help Topics (Темы справки). Выбор этого пункта меню выводит индекс справочного файла (создание индекса является частью процесса разработки справочного файла).
Чтобы реализовать этот и другие пункты меню Help, нужно написать некоторый код. (В каждом случае речь идет только об одной строке.) VCL содержит метод HelpCommand(), который может выводить WinHelp в одном из нескольких режимов. Если вам нужно реализовать пункт меню Help | Contents, то код будет выглядеть следующим образом: