Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TObjectList. Чтение и запись [D7, XP]


kilonet ©   (2006-02-08 19:48:00) 

объявляю класс и список объектов этого типа:

 TFile = class  
   Name: String;
 end;

FileList: TObjectList;

procedure TForm1.FormCreate(Sender: TObject);
begin
 FileList := TObjectList.Create (True);
// ...

добавляю объекты так:

var
 CurFile: TFile;
begin
 CurFile := TFile.Create;
 CurFile.Name := ExtractFileName(SearchRec.Name);
 FileList.Add(CurFile);

при чтении:

var
 i: Integer;
 xx: TFile;
begin
 xx := TFile.Create;
 for i := 0 to FileList.Count - 1 do
 begin
   xx := TFile(FFilelist.First);
   ListBox.Items.Add(xx.Name);
 end;

выдаёт AccessViolation. Что я делаю неправильно?


Джо   (2006-02-09 03:29:00) [1]

> [6] Gero ©   (09.02.06 03:24)
> А может и не быть. У нас нет никаких данных по этому поводу.

Ну, данные таковы, что имеем "Access violation" в ран-тайм, а не "Undeclared identifier" в дизайн-тайм. Впрочем, может быть все, что угодно, учитывая уровень сабжевого кода...


Gero   (2006-02-09 03:24:00) [2]

> Что, ж FileList может быть и свойством, связанным с полем
> FFileList...

А может и не быть. У нас нет никаких данных по этому поводу.


Джо   (2006-02-09 03:23:00) [3]

Что, ж FileList может быть и свойством, связанным с полем FFileList...


Gero   (2006-02-09 03:17:00) [4]

> ЮЮ ©   (09.02.06 03:14)

Да, я был крайне невнимателен и, как всегда, поторопился с выводами :)
Спасибо.


ЮЮ   (2006-02-09 03:14:00) [5]


> Других ошибок в приведенном коде нет.

Думаешь, пробегать  в цикле один список(FileList), а выводить при этом первый элемент другогосписка( FFilelist) - нормальное решение?


Gero   (2006-02-08 20:31:00) [6]

Других ошибок в приведенном коде нет.


Джо   (2006-02-08 19:55:00) [7]

> xx := TFile.Create;

Это не нужно.
--

>   xx := TFile(FFilelist.First);

заменить на TFile(FFileList[I]).
--
По остальному: где-то в коде есть еще ошибки.


Наверх

Титульная страница Поиск, карта сайта Написать письмо