Иллюстрированный самоучитель по Delphi 7 для начинающих

Вывод справочной информации

Следующая программа, ее диалоговое окно приведено на рис. 14.10, а текст – в листинге 14.2, демонстрирует использование ActiveX-компонента Hhopen для вывода справочной информации. Компонент THhopen добавляется в форму обычным образом. Так как во время работы программы он не отображается, то его можно поместить в любое место формы.

Иллюстрированный самоучитель по Delphi 7 для начинающих › Справочная система › Вывод справочной информации
Рис. 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.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.