Теперь рассмотрим код вспомогательной формы приложения - файла U2Br2:

unit U2Br2;

interface

type

TFOpt = class(TForm)

procedure FormShow(Sender: TObject);
procedure FormHide(Sender: TObject);
procedure BHomeCurrentClick(Sender: TObject);
procedure BHomeFindClick(Sender: TObject);
procedure BHomePointClick(Sender: TObject);
procedure BSearchCurrentClick(Sender: TObject);
procedure BSearchFindClick(Sender: TObject);

procedure BSearchPointClick(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

FOpt: TFOpt;

implementation

uses UBrowser2, registry;

{$R *.DFM}

var Reg: TRegistry;
procedure TFOpt.FormShow(Sender: TObject);
begin PFlags := 0;

// Создается объект Reg типа TRegistry

Reg := TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;

if Reg . KeyExists ( '\Sof tware\Microsof tMnternet Explorer\Main ' ) then begin

Reg.OpenKey('\Software\Microsoft\Internet Explorer\Main',true);
EHome.Text:= Reg.ReadString('Start Page');
ESearch.Text:= Reg.ReadString('Search Page');
ends-end;

procedure TFOpt.FormHide(Sender: TObject); begin

Reg.Free; ends-procedure TFOpt.BHomeCurrentClick(Sender: TObject); begin

EHome.Text := Forml.CBURL.Text;

Reg.WriteString('Start Page', EHome.Text) ends-procedure TFOpt.BHomeFindClick(Sender: TObject); begin

if Forml.OpenDialogl.Execute then begin

EHome.Text := Forml.OpenDialogl.FileName;
Reg.WriteString('Start Page', EHome.Text);
ends-end;

procedure TFOpt.BHomePointClick(Sender: TObject); begin

Reg.WriteString('Start Page V EHome.Text); ends-procedure TFOpt.BSearchCurrentClick(Sender: TObject); begin

ESearch.Text := Forml.CBURL.Text;
Reg.WriteString('Search Page', ESearch.Text) end;

procedure TFOpt.BSearchFindClick(Sender: TObject); begin

if Forml.OpenDialogl.Execute then begin

ESearch.Text := Forml.OpenDialogl.FileName;
Reg.WriteString('Search Page', ESearch.Text);
end;
end;

procedure TFOpt.BSearchPointClick(Sender: TObject); begin

Reg.WriteString ('Search Page', ESearch.Text);
end;

end.

Прежде всего, обратите внимание на то, что в оператор uses помимо ссылки на файл основной формы UBrowser2 введена ссылка на модуль registry. Эта ссылка необходима, поскольку в процедурах вспомогательной формы используется объект Reg типа TRegistry для работы с реестром Windows. Автоматически модуль registry к файлу не подключается.

Объект Reg типа TRegistry создается в процедуре FormShow - обработчике события OnShow формы. Это событие возникает при каждом вызове вспомогательной формы. В качестве ключа объекта Reg задается HKEY_CURRENT_USER\ Software\Microsoft\Internet Explorer\Main. В окна редактирования ЕНоте и ESe-arch методом ReadString объекта типа TRegistry загружаются соответственно адреса домашней страницы и страницы поиска, хранящиеся в параметрах ключа "Start Page" и "Search Page".

Объект Reg существует, пока прльзователь работает в окне вспомогательной формы. Это требуется, так как он может работать с реестром, изменяя установки домашней страницы и страницы поиска. При закрытии формы в процедуре FormHide объект Reg уничтожается.

Процедуры BHomeCurrentClick, BHomeFindClick, BHomePointClick являются обработчиками щелчков на кнопках, осуществляющих смену домашней страницы. В зависимости от кнопки тот или иной адрес заносится в окно ЕНоте и методом WriteString объекта типа TRegistry записывается в параметр "Start Page" ключа реестра. Аналогично работают процедуры BSearchCurrentClick, BSearch-FindClick, BSearchPointClick, являющиеся обработчиками щелчков на кнопках, осуществляющих смену страницы поиска.

5.4 Просмотр документов из Интернета и интранета в приложениях VCL Win32 || Оглавление || 5.5 Обработка документов в компоненте RichEdit


⇐ Предыдущая страница|

Приемы программирования в Delphi на основе VCL



Новости за месяц

  • Март
    2020
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс