Вывод справочной информации
Следующая программа, ее диалоговое окно приведено на рис. 14.10, а текст – в листинге 14.2, демонстрирует использование ActiveX-компонента Hhopen для вывода справочной информации. Компонент THhopen добавляется в форму обычным образом. Так как во время работы программы он не отображается, то его можно поместить в любое место формы.
Рис. 14.10. Окно программы Использование ActiveX
Листинг 14.2. Использование компонента Hhopen unit ushh_;.
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, OleCTRLs, HHOPENLibJTLB, StdCTRLs; type TForm1 = class (TForm) Label1: TLabel; Editl: TEdit; // файл справки Edit2: TEdit; //раздел справки (имя HTML-файла) Button1: TButton; // кнопка Справка Hhopen1: THhopen; // ActiveX-компонент Hhopen Label2: TLabel; Label3: TLabel; procedure ButtonlClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} // щелчок на кнопке Справка procedure TForm1.ButtonlClick(Sender: TObject); var HelpFile: string; // файл справки HelpTopic: string; // раздел справки pwHelpFile: PWideChar; // файл справки (указатель на строку WideChar) pwHelpTopic: PWideChar; // раздел (указатель на строку WideChar) begin HelpFile: = Edit1.Text; HelpTopic: = Edit2.Text; // выделить память для строк WideChar GetMemfpwHelpFile, Length(HelpFile) * 2); GetMemfpwHelpTopic, Length(HelpTopic)*2); // преобразовать Ansi-строку в WideString-строку pwHelpFile: = StringToWideChar (HelpFile,pwHelpFile,MAX_PATH*2) pwHelpTopic: = StringToWideChar(HelpTopic,pwHelpTopic,32); // вывести справочную информацию Form1.Hhopen1.OpenHelp(pwHelpFile,pwHelpTopic); end; end.
Вывод справочной информации выполняет процедура обработки события Onclic на кнопке Справка. Так как параметры метода OpenHelp должны быть строками widechar, то сначала выполняется преобразование ANSI-строки В строку WideChar.