Показать сообщение отдельно
  #4  
Старый 18.09.2013, 15:39
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Можно сделать проще - сохранять содержимое формы целиком, после перезапуска сборки состояние TreeView восстановится полностью, да и не только дерева.
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
  FStr: TFileStream;
  MemStr: TMemoryStream;
begin
 if FileExists('Form1.ini') then
   begin
    Form1.DestroyComponents;
    FStr:= TFileStream.Create('Form1.ini', fmOpenRead);
    MemStr:= TMemoryStream.Create;
    ObjectTextToBinary(FStr, MemStr);
    MemStr.Position:= 0;
    MemStr.ReadComponent(Form1);
    MemStr.Free;
    FStr.Free;
   end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
  FStr: TFileStream;
  MemStr: TMemoryStream;
begin
  FStr:= TFileStream.Create('Form1.ini', fmCreate);
  MemStr:= TMemoryStream.Create;
  MemStr.WriteComponent(form1);
  MemStr.Position:= 0;
  ObjectBinaryToText(MemStr, FStr);
  MemStr.Free;
  FStr.Free;
end;
Ответить с цитированием