нем 2 кнопки.
Один сохраняет форму в файл, другой читает. Только при чтения возникает ошибка :(
Но помню, что когда–то делал так и нормально работал... Что не правильно делаю? Вот код.
procedure TForm1.Button1Click(Sender: TObject);
var
fm: TfileStream;
mm: TmemoryStream;
begin
fm := TfileStream.Create('i:\fm.dfm', fmcreate);
mm := TmemoryStream.Create;
mm.WriteComponent(Form1);
mm.Position := 0;
ObjectBinaryToText(mm, fm);
mm.Free;
fm.Free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
fm: TForm;
fs: TfileStream;
ms: TmemoryStream;
begin
registerclasses([TButton]);
fm := TForm.Create(self);
fs := TfileStream.Create('i:\fm.dfm', fmopenread);
ms := TmemoryStream.Create;
fs.Position := 0;
ObjectTextToBinary(fs, ms);
ms.Position:=0;
try
ms.ReadComponent(fm);
finally
end;
fs.Free;
ms.Free;
fm.Show;
end;
fm := ms.ReadComponent(nil); ?
Incompatible types: 'TForm' and TComponent'
Обсуждают сегодня