Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
34
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

1.4. Секция map

В секции [MAP] следует определить числовые идентификаторы разделов, которые будут автоматически вызываться кнопками Help и клавишей F1 в работающей программе. Все видимые компоненты Delphi имеют специальное свойство HelpContext, в которое можно поместить числовой идентификатор раздела справочной службы. Если соответствующий компонент имеет фокус ввода, и пользователь нажимает клавишу F1, автоматически включается справочная система Windows, которая отыскивает в Help-файле и показывает в справочном окне соответствующий раздел. Только разделы, указанные в секции [MAP], могут быть контекстно-доступными из работающей программы. Остальные разделы можно просмотреть после вызова справки путем выбора ключевых слов, с помощью кнопок просмотра связанных разделов или по содержанию справочной службы.

После щелчка на кнопке Map в окне MS HW появляется окно, показанное на рис. 98.

Рис.98. Окно определения числовых идентификаторов разделов

В списке Map topics IDs to numeric values указываются уже определенные разделы в формате

ИДЕНТИФИКАТОР_ТЕМЫ= HELPCONTEXT

Здесь идентификатор_темы — идентификатор, определенный сноской # в RTF-файле; HelpContext — присвоенный разделу числовой идентификатор, который можно помещать в свойство HelpContext визуального компонента.

Для задания идентификатора нового раздела или удаления раздела из списка Map topics IDs to numeric values используются соответственно кнопки Add и Remove. С помощью кнопки Include можно указать ASCII-файл с перечнем идентификаторов разделов и присвоенными им числовыми идентификаторами. Кнопка Edit позволяет отредактировать элемент списка.

При разработке файлов справочной службы, включающих множество разделов, приходится запоминать (или распечатывать) многочисленные идентификаторы разделов, чтобы поставить им в соответствие числовые идентификаторы. Эту проблему можно упростить, если вы назначили идентификаторы такими же, как и названия разделов, заменив в них пробелы символами подчеркивания. В этом случае можно выбрать команду File ► Report, в появившемся диалоговом окне указать имя Help-файла и имя файла для отчета, установить режим вывода названий (установить переключатель Titles) и щелкнуть на кнопке Report — MS HW создаст текстовый файл с перечнем названий всех тем. Если этот файл не слишком велик, он будет тут же показан в окне MS HW, и вы сможете без труда вспомнить идентификаторы.

1.5. Секция ALIASES

В секции [ALIASES] следует указать псевдонимы идентификаторов разделов, с помощью которых можно модифицировать секцию [MAP] без изменения RTF-файлов. Назначение кнопок Add, Remove, Include и Edit такое же, как и в секции [MAP]. После назначения псевдонима он может использоваться в секции [MAP] вместо идентификатора раздела. Эта возможность облегчает модификацию справочной службы.

1.6. Секция CONFIG

Секция [CONFIG] предназначена для указания макрокоманд, которые будут выполняться в момент открытия справочной службы. С ее помощью можно также зарегистрировать подпрограммы из библиотек(и) DLL, которые после этого могут использоваться наравне с макрокомандами.

1.7. Секция BAGGAGE

Щелчком на кнопке Data Files в окне MS HW открывается диалоговое окно определения файлов, которые будет использовать справочная служба. Список этих файлов содержит секция [BAGGAGE] проектного файла. Помимо RTF-файлов, которые обычно вставляются в секции [FILES], здесь можно также указать файлы библиотек DLL, подпрограммы которых после этого могут использоваться как макрокоманды.

2. Файл содержания справочной службы

Содержание справочной службы оформляется в файле с расширением CNT и становится доступным после щелчка на вкладке Содержание в справочном окне. Для создания/редактирования содержания используется утилита MS HW.

Чтобы создать файл содержания, запустите MS HW, выберите команду File ► New и в дополнительном диалоговом окне установите переключатель Help Contents — на экране появится окно, показанное на рис. 99.

В полях Default filename (and window) и Default title в верхней части окна нужно указать соответственно имя Help-файла, для которого создается содержание, и тип окна для отображения содержаний, а также заголовок основного окна справочной службы. Заголовок в поле Default title, если он задан, переопределяет заголовок, указанный в секции [OPTIONS] файла проекта. Эти параметры можно установить вручную, но удобнее для ввода использовать вспомогательное диалоговое окно, которое раскрывается щелчком на кнопке Edit справа от поля Default title. При ручном вводе в поле Default filename (and window) имя файла отделяется от имени окна символом >. Например:

HelpTest.hlp>WIND

Рис. 99. Окно MS HW в режиме создания/редактирования содержания

Элементы содержания могут быть темами и разделами. Темы служат узлами в иерархической структуре содержания. В окне справочной службы слева от названия темы указывается значок в виде раскрытой или захлопнутой книги. Раздел — конечный элемент содержания. Слева от него указывается значок в виде раскры­того листа со знаком вопроса.

Для вставки в файл элемента содержания нужно щелкнуть на кнопке Add Above или Add Below. В первом случае элемент вставляется перед текущим элементом, во втором — после него. После щелчка на любой из этих кнопок появляется окно, показанное на рис. 100.

Переключатели в верхней части окна определяют тип вставляемого элемента:

  • Heading — вставляется тема; при установке этого переключателя все расположенные ниже строки, кроме Title, становятся недоступными;

  • Topic — вставляется раздел;

  • Macro — вставляется макрокоманда; эта макрокоманда будет выполняться при выборе элемента в окне содержания;

  • Include — вставляется текстовый файл в формате ASCII с элементами содержания.

Четыре поля ввода ниже переключателей используются только при вставке раздела. При вставке темы или включаемого файла доступно только первое поле, при вставке макрокоманды — первое и второе, которое в этом случае снабжается надписью Macro.

Рис. 100. Окно определения элемента содержания

В поле Title вводится произвольный текст длиной до 127 символов, который будет представлять элемент в окне содержания. В этой строке также указывается имя включаемого файла, если установлен переключатель Include. Во втором поле указывается идентификатор раздела или имя макрокоманды. В поле Help file нужно указать Help-файл, если справочная система использует несколько файлов, а в поле Window type — тип окна для отображения раздела.

Для смещения элемента содержания на один уровень иерархии вниз используется клавиша —>, а на один уровень вверх — клавиша *—. Элемент сдвигается вместе со всеми другими элементами, расположенными ниже него. Максимальное количество уровней иерархии — 9.

Следует заметить, что файл содержания представляет собой текстовый файл в формате ASCII, каждая строка которого соответствует элементу содержания. В начале строки указывается цифра, определяющая уровень иерархии, на котором располагается элемент. На рис. 101 для примера показано содержание справочной службы What's New in Delphi, которому соответствует такой CNT-файл:

:BASE del6new.hlp>main

TITLE What's New in Delphi

:

1 What's New

2 Overview=HC_MHelpWhatsNew

2 New IDE features=IDEfeatures

2 New Internet features4nternetfeatures

2 XML support=XMLsupport

2 New compiler features=CoripilerDebugger features

2 New COM/ActiveX features-COMActiveXfeatures

2 New database features=Databasefeatures

2 New CORBA features=corbafeatures

2 New actions features=Actionsfeatures

2 New VCL units and features=VCLfeatures

2 New RTL units and features=RTLfeatures

2 Custom variant support=CustomVariantSupport

Рис.101. Содержание справочной службы Delphi

После создания файла содержания его нужно сохранить в том же каталоге, что и Help-файл, — после этого или после щелчка на вкладке Содержание в окне справочной службы содержание станет доступным в момент запуска Help-файла.