Главная страница
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.038 c
3-1090238932
ligor
2004-07-19 16:08
2004.08.15
Текущая дата в IB 6.5 диалект 1


3-1090422734
Kapitan
2004-07-21 19:12
2004.08.15
Аутентификация в SAM из ХП


3-1090247645
sergvc
2004-07-19 18:34
2004.08.15
как добавить в DataSet колонку не связанную с данными для временн


1-1091003311
shc
2004-07-28 12:28
2004.08.15
Динамическое создание формы.


4-1089216135
NLO
2004-07-07 20:02
2004.08.15
Свая консоль