Можно записывать добавляемые имена html-файлов в TStringList, а атрибуту Data соответствующего ему элемента в TreeView присваивать указатель на эту добавленную строку.
Код:
type
TForm1 = class(TForm)
TreeView1: TTreeView;
Button1: TButton;
Edit1: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
private
{ Private declarations }
WebAddresses: TStringList; // хранит пути к html-файлам
public
{ Public declarations }
end;
..........................
procedure TForm1.FormCreate(Sender: TObject);
begin
WebAddresses := TStringList.Create;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
WebAddresses.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin // добавляем очередной элемент и назначаем ему строку с путем
WebAddresses.Add(Edit1.Text);
{ это просто демонстрирует, как инициализируется указатель Data.
Добавляйте элементы в TreeView так, как желаете сами }
TreeView1.Items.AddChild(TreeView1.Items.GetFirstNode, 'Item caption').Data :=
@WebAddresses.Strings[WebAddresses.Count - 1][1];
end;
Тогда навигацию веб-браузером нужно осуществлять так:
Код:
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
WebBrowser1.Navigate(StrPas(PChar(Node.Data)));
end;