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

как сохранить TList   Найти похожие ветки 

 
Creative   (2006-04-07 12:13) [0]

Допустим создается несколько экземпляром класса. Каждый экземпляр при создании добавляется к списку var MyList: TList.
Нужно сохранить и естественно загрузить все созданные объекты. Сохранить то просто
for i:= 0 to MyList.Count-1 do MyObject.SaveToFile

Но как сохранить саму переменную MyList? Ведь если при загрузке написать
for i:= 0 to MyList.Count-1 do MyObject.LoadFromFile

программа освершенно справедливо вылетит сказав, что MyList = nil.


 
Рамиль ©   (2006-04-07 12:15) [1]

А зачем MyList сохранять? Создавай и загружай в него MyObject через Add


 
Creative   (2006-04-07 12:34) [2]

да, но в MyList хранились ссылки на объекты, получается что при попытке загрузить объекты я больше не могу к ним обратиться


 
Рамиль ©   (2006-04-07 12:42) [3]


> да, но в MyList хранились ссылки на объекты, получается
> что при попытке загрузить объекты я больше не могу к ним
> обратиться

А с чего ты взял, что ссылки будут теже самые? Или я не понял вопроса.
Опиши точно когда надо загружать и какие объекты?


 
Palladin ©   (2006-04-07 12:43) [4]


> но в MyList хранились ссылки на объекты


и что?


> получается что при попытке загрузить объекты я больше не
> могу к ним обратиться

чушь

Procedure SaveObjList(l:TList);
Var
i:Integer;
Begin
SaveObjCount(l.Count);
For i:=0 to l.Count-1 Do TMyObject(l[i]).SaveToFile
End;

Procedure LoadObjList(l:TList);
Var
i:Integer;
o:TMyObject;
Begin
For i:=0 to LoadObjCount0-1 Do
 Begin
  o:=TMyObject.Create;
  o.LoadFromFile;
  l.Add(o);
 End;
End;


 
Kolan ©   (2006-04-07 12:43) [5]

Если тебе нужны объекты во время работы приложения то зачем их сохранять. Сделай глобальный TList.. Или я не понял вопроса.


 
Creative   (2006-04-07 12:52) [6]

> Palladin ©   (07.04.06 12:43) [4]

можно уточнить, что означают эти два выражения:

SaveObjCount(l.Count);
......

LoadObjCount0-1
?


 
Palladin ©   (2006-04-07 12:53) [7]

СохранитьКоличествоОбъектов
ЗагрузитьКоличествоОбъектов


 
MsGuns ©   (2006-04-07 13:04) [8]

Может, надо сохранять - восстанавливать не сами объекты, а некоторые их свойства ? Иначе как-то невнятно все это звучит. Опять же сохранения и восстановление в рамках одного сеанса работы приложения или разных ?
Можно описать задачу поподробнее ?



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

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



Память: 0.46 MB
Время: 0.043 c
2-1143271095
Delphi5.01
2006-03-25 10:18
2006.04.23
Обновить значение реестра программно


15-1143861929
Я туплю....
2006-04-01 07:25
2006.04.23
Почему не надо просить уставщих админов о помощи! :)


3-1141039240
DimonNew
2006-02-27 14:20
2006.04.23
BeforeUpdateRecord компоненты DataSetProvider


2-1144383257
fr
2006-04-07 08:14
2006.04.23
Помогите, пожалуйста с запросом


15-1143746621
Yanis
2006-03-30 23:23
2006.04.23
Хорошая прога :)




   Наверх