Главная страница
    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.46 MB
Время: 0.008 c
1-99546
KOT
2003-12-16 08:26
2003.12.30
Как ине задать таймер чтобы систему не грузить


1-99570
Alex-chainik
2003-12-15 09:58
2003.12.30
Подобие TasBar в Windows


1-99596
Эли
2003-12-17 13:48
2003.12.30
drag&


7-99803
SoNiC
2003-10-23 18:20
2003.12.30
Оключение горячих клавиш


3-99484
Goida
2003-12-04 15:01
2003.12.30
Частично прокручивающийся грид





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский