Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.12.30;
Скачать: [xml.tar.bz2];

Вниз

сохранить наследника от 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-99641
klyonov
2003-12-11 15:54
2003.12.30
и снова ZIP


1-99618
FreeON
2003-12-16 19:48
2003.12.30
Автоподстановка


6-99685
Mistic
2003-10-29 22:07
2003.12.30
прога работающая с модемом


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


3-99485
Nikolai_S
2003-12-04 12:37
2003.12.30
ADO.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский