Вниз
Скачать: CL | DM;

сохранить наследника от TObject в файл...   Найти похожие ветки 

← →
Simple Guet   (2003-12-18 08:44) [0]

Есть класс на основе TObject.Как сохранить переменную этого типа в файл?
Форму, к примеру, можно сохранить с помощью TStream.WriteComponent - а как сабж сделать?


← →
MBo ©   (2003-12-18 09:00) [1]

сделай класс наследником TComponent


← →
Digitman ©   (2003-12-18 09:01) [2]


> Есть класс на основе TObject


что ты выиграл, наследуя свой класс от TObject ? практически - ничего ... аголовной боли себе добавил)

для таких целей, чтобы не изобретать веслосипед и при этом получить разом кучу возможностей, следовало сразу наследоваться как минимум от TPersistent, а еще лучше - от TComponent


← →
Simple Guest   (2003-12-18 09:08) [3]

делал...

type
TStorage_ = class(TComponent)
private
Fs:string;
public
property S:string read fs;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
st:TStorage_;
stream:TMemoryStream;
begin
St:=TStorage_.Create;
st.Fs:="zzzz";
Stream:=TMemoryStream.Create;

Stream.WriteComponent(st);

Stream.SaveToFile("c:\qwe");
Stream.Free;
st.Free;
end;


в итоге в файле
TPF0 TStorage_ и все. А где Fs?


← →
Digitman ©   (2003-12-18 09:10) [4]


> А где Fs?


перенеси Fs в published - будет тебе счастье)


← →
Юрий Зотов ©   (2003-12-18 09:12) [5]

Cм. TPersistent, ObjectBinaryToText, ObjectTextToBinary.

Для примера посмотрите исходники любого наследника TPersistent.


← →
MBo ©   (2003-12-18 09:14) [6]

также см. DefineProperties


← →
Simple Guest   (2003-12-18 09:20) [7]

ЫЫЫЫЫЫЫЫЫ....! Счастье настало!! :-)

>Digitman © (18.12.03 09:10) [4]

я попутал - не FS а S естественно...

надо property S:string read fs; в published перенести
и добавить write FS;

вот балбес - аж стыдно стало :-)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-99565
Ig
2003-12-17 23:11
2003.12.30
Подскажите пожалуйста как в TListView добавить данные из реестра


14-99791
belyh
2003-12-05 14:20
2003.12.30
обмен опытом


14-99708
Style
2003-12-08 19:59
2003.12.30
Товарищи нужен совет!


1-99585
MoGiLsHiKK
2003-12-17 15:21
2003.12.30
Как программно определить OS?


3-99478
rumrunner
2003-12-04 22:00
2003.12.30
ADO briefcase model ne rabotaet s master/detail?




   Наверх