Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.07;
Скачать: CL | DM;

Вниз

Создание коллекции объектов   Найти похожие ветки 

 
GreySerg   (2003-07-25 18:41) [0]

Есть объект


TExpType = class
private
FName: String;
FTableName: String;
FPK_Column_Name: String;
FNote:String;
FHierarchy: Boolean;
FDocument: Boolean;
FStatic: Boolean;
FAttributes: TExpMetaAttributeCollection;
public

procedure AddAttribute();
procedure RemoveAttribute();

property Name: String read FName write FName;
property TableName: String read FTableName write FTableName;
property PK_Column_Name: String read FPK_Column_Name write FPK_Column_Name;
property Note: String read FNote write FNote;
property Hierarchy: Boolean read FHierarchy write FHierarchy default False;
property Document: Boolean read FDocument write FDocument default True;
property Static: Boolean read FStatic write FStatic default True;
end;


от какого объекта лучше унаследовать (от TList, TObjectList, TCollection), чтобы получить коллекцию объектов TExpTypeCollection , в которой есть методы AddType, DelType, EditType, SortByName?


 
vuk ©   (2003-07-25 19:04) [1]

Я бы от TObject унаследовал. А при реализации использовал бы TObjectList.

TCollection - это, в основном, для использования в компонентах...


 
Юрий Зотов ©   (2003-07-26 08:52) [2]

> vuk © (25.07.03 19:04)

IMHO, все же не совсем так. Коллекции удобны для построения, вообще говоря, любых списков объектов, элементы которых должны:
- редактироваться и настраиваться в design-time;
- сохраняться в DFM.

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


> GreySerg (25.07.03 18:41)

Если Вашему списку требуются настраиваемость и сохраняемость, то действительно есть смысл делать его в виде коллекции. Тогда элемент списка наследуете от TCollectionItem, а саму коллекцию - от TCollection (или от TOwnedCollection). Как это реализуется, можно посмотреть здесь:
http://www.delphikingdom.com/helloworld/tcollection.htm

Ну а если настраиваемость и сохраняемость не нужны, то, видимо, vuk предложил оптимальное решение.



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

Текущий архив: 2003.08.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
14-20742
race1
2003-07-20 18:28
2003.08.07
Масяня - RUSPUNK.exe


1-20531
dima_matrix
2003-07-25 21:29
2003.08.07
Запуск копии функции


14-20772
Gorlum
2003-07-21 17:11
2003.08.07
Firebird


1-20607
GrBob
2003-07-24 17:04
2003.08.07
Out of memory while expanding memory stream


14-20688
gfksx
2003-07-23 03:06
2003.08.07
Нужен совет по сокетам в обмен на USD