Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.15;
Скачать: CL | DM;

Вниз

Сохранение формы в run-time   Найти похожие ветки 

 
СатирЪ ©   (2004-07-29 16:42) [0]

Подскажите, пожалуйста, каким методом можно сохранить форму в dfm-файл, на которую в рантайме были установленны компоненты?


 
Юрий Зотов ©   (2004-07-29 16:53) [1]

WriteComponentResFile


 
СатирЪ ©   (2004-07-29 17:05) [2]

Да, спасибо, уже нашёл.
Только оно сохраняется в бинарном виде.
А как сохранить в текстовом?


 
Юрий Зотов ©   (2004-07-29 17:25) [3]

TMemoryStream -> WriteBuffer -> ObjectBinaryToText -> TFileStream


 
СатирЪ ©   (2004-07-30 14:36) [4]

var Buffer,Count:integer;
   Input:TMemoryStream;
   Output:TFileStream;
begin
 Input:=TMemoryStream.Create;
 Input.WriteBuffer(Buffer,Count);
 Output:=TFileStream.Create("test.dfm",$FFFF);
 ObjectBinaryToText(Input, Output);
end;

Вопрос на засыпку: всё ли здесь верно и что долно представлять собой Buffer,Count?


 
Юрий Зотов ©   (2004-07-30 14:53) [5]

Примерно так:

procedure SaveFormToFile(Form: TForm; FileName: string);
var
 MS: TMemoryStream;
 FS: TFileStream;
begin
 MS := TMemoryStream.Create;
 try
   MS.WriteBuffer(Form, Form.InstanceSize);
   MS.Position := 0;
   FS := TFileStream.Create(FileName, ...);
   try
     ObjectBinaryToText(MS, FS)
   finally
     FS.Free
   end
 finally
   MS.Free
 end
end;


 
СатирЪ ©   (2004-07-30 15:23) [6]

Благодарю.



Страницы: 1 вся ветка

Текущий архив: 2004.08.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.437 c
14-1091173497
Layner
2004-07-30 11:44
2004.08.15
Мышь(оптическая) сама бегает в win2000 :)


3-1090227822
snake1977
2004-07-19 13:03
2004.08.15
ORACLE и генератор


4-1088692426
Интересующийся
2004-07-01 18:33
2004.08.15
Скорость LAN?


3-1090452138
sashapont
2004-07-22 03:22
2004.08.15
Сумма всех ячеек


14-1090507038
banderas
2004-07-22 18:37
2004.08.15
Delphi 8 ваши впечатления:..