Вывод справочной информации
Чтобы вывести справочную информацию, которая находится в СНМ-файле, нужно воспользоваться ActiveX-компонентом (элементом управления) ньореп, который входит в состав Windows и представляет собой специальную динамическую библиотеку (файл Hhopen.ocx).
Первое, что следует сделать, – установить компонент Hhopen на одну из вкладок палитры компонентов. Для этого надо из меню Component выбрать команду Import ActiveX Control. На экране появится окно Import ActiveX, в котором будут перечислены все зарегистрированные в реестре Windows компоненты. В окне Import ActiveX, в списке зарегистрированных компонентов, нужно выбрать строку hhopen OLE Control module и щелкнуть на кнопке Install. В результате этого на экране появится диалоговое окно Install, в котором программист может выбрать пакет (packege – пакет, библиотека компонентов), в который будет добавлен устанавливаемый компонент.
Компоненты, добавляемые программистом, "по умолчанию" добавляются в пакет dciusr. В результате щелчка на кнопке ОК выбранный компонент добавляется в пакет, и на экране появляется окно Package и запрос подтверждения процесса перекомпиляции пакета. По завершении процесса компиляции на экране появится окно, информирующее о том, что компонент добавлен в пакет и зарегистрирован. Значок компонента Hhopen будет добавлен на вкладку ActiveX. В процессе компиляции будет создан файл представления компонента – модуль HHOPENLib_TLIB.pas, который содержит описание методов, свойств и событий компонента.
Модуль представления можно увидеть, загрузив его в редактор кода из каталога \Delphi 7\Lib. Пролистав в окне редактора кода модуль HHOPENLib_TLIB.pas, который представляет собой интерфейс для доступа к элементу управления, можно найти описание класса THhopen (листинг 14.1).
Листинг 14.1. Описание класса THhореn.
THhopen = class(Telecontrol) private FIntf: _DHhopen; function GetControlInterface: _DHhopen; protected procedure CreateControl; procedure InitControlData; override; public function OpenHelp(const HelpFile: WideString; const HelpSection: WideString): Integer; procedure CloseHelp; property ControlInterface:_DHhopen read GetControlInterface; property DefaultInterface:_DHhopen read GetControlInterface; published property isHelpOpened: WordBool index 1 read GetWordBoolProp write SetWordBoolProp stored False; end;
Класс THhopen предоставляет два метода: OpenHelp и CloseHelp.
Метод OpenHelp обеспечивает вывод справочной информации, метод CloseHelp – закрывает окно справочной системы.
У метода openHelp два параметра – имя файла справочной информации и имя раздела, содержимое которого будет выведено. В качестве имени раздела надо использовать имя HTML-файла, который применялся программой HTML Help Workshop в процессе создания СНМ-файла. Следует обратить внимание на то, что оба параметра должны быть строками widechar.