Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.014 c
14-20749
Ahmad K
2003-07-15 23:18
2003.08.07
Можноли


1-20541
Николай В.
2003-07-23 15:36
2003.08.07
XML


3-20395
Viktor
2003-07-16 10:19
2003.08.07
SQL


14-20668
berezuev
2003-07-22 19:19
2003.08.07
Как уменьшить размер DELPHI exe-шника? 500Kb - многовато!


3-20380
AkaSaint
2003-07-14 18:15
2003.08.07
Как в ADOTable обновить из БД только одну запись?




   Наверх