Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.30;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.013 c
14-99755
RainKM
2003-12-06 04:27
2003.12.30
Сom


3-99465
Марат
2003-12-08 07:44
2003.12.30
Считывание информации из справочника


3-99494
barbi
2003-12-04 14:14
2003.12.30
ПРо Интербейз


1-99538
djsash
2003-12-16 12:35
2003.12.30
Работа с Excel файлами... (нужна помощь)


3-99487
123456
2003-12-07 05:58
2003.12.30
Cписок таблиц в базе FireBird