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

Вниз

TObjectList   Найти похожие ветки 

 
tv   (2003-05-22 16:54) [0]

Почему при вызове метода Clear переменной типа TObjectList вызывается исключительная ситуация.


 
MBo   (2003-05-22 16:55) [1]

А ты его создал?


 
tv   (2003-05-22 17:01) [2]

В том то дело что да. На даном этапе тестирования программы в нем всего 2 объекта. правда объекты добавлены таким способом:
fmCalc.EquipOperat.Add(TObject(dmEqpt.TbEqREqR_Op_ID.AsInteger));
fmCalc - форма
EquipOperat - собственно TObjectList
dmEqpt.TbEqREqR_Op_ID.AsInteger - значение поля базы данных


 
Serginio   (2003-05-22 17:04) [3]

Интересно а на какой объект указывает
TObject(dmEqpt.TbEqREqR_Op_ID.AsInteger));???


 
Anatoly Podgoretsky   (2003-05-22 17:05) [4]

Какое отношение dmEqpt.TbEqREqR_Op_ID.AsInteger имеет к TObject?
Тебе нужен TList или динамический массив


 
Serginio   (2003-05-22 17:08) [5]

Не знаю, что такое TObjectList но по его названию при очистке должен вызываться деструктор каждого объекта в этом TObjectList.


 
Юрий Зотов   (2003-05-22 17:09) [6]

Вероятно, в БД хранятся адреса объектов...
И получается "объектно-ориентированная БД"...
:о)


 
tv   (2003-05-22 17:17) [7]

не в бд как раз хранятся целые числа, просто класс TObjectList имеет множество методов для обработки списка (типа поиск индекса и т.д.), поэтому и было решено использовать этот класс вместо динамического массива.
может просто
объявить клас
TIntObj = class
ID : integer;
end;

и добавлять его


 
clickmaker   (2003-05-22 17:20) [8]

TObjectList не имеет ничего такого полезного, что не было бы реализовано в TList. Так что его применение здесь не оправдано, на мой взгляд


 
tv   (2003-05-22 17:23) [9]

попробую использовать TList


 
Serginio   (2003-05-22 17:26) [10]

Тогда уж
IntObj:=TIntObj.Crete;
IntObj.ID:=dmEqpt.TbEqREqR_Op_ID.AsInteger;
fmCalc.EquipOperat.Add(IntObj);


 
rounin   (2003-05-22 17:29) [11]

У тебя, вероятно, EquipOperat.OwnsObjects = True.
И при EquipOperat.Clear список пытается освободить объекты, в нём хранящиеся. Со всеми вытекающими.



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

Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
3-2771
ArtemB
2003-05-13 07:01
2003.06.02
Нумерация записей


1-2938
werr
2003-05-20 17:10
2003.06.02
как определить каталог, откуда запускалась программа?


14-3152
Думкин
2003-05-15 07:06
2003.06.02
Кругозор


1-2903
KA-87
2003-05-22 21:08
2003.06.02
Как засунуть свою прогу в меню


14-3057
Separator
2003-05-14 07:30
2003.06.02
Решение систем уравнений





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