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

Как создать коллекцию из контролов   Найти похожие ветки 

← →
LandWarrior   (2002-10-13 18:04) [0]

Как мне создать коллекцию из контролов, используя как можно меньше собственного кода, т.е. обойтись стандартной функциональностью TCollection где только возможно?


← →
Юрий Зотов ©   (2002-10-13 18:17) [1]

Стандартная функциональность TCollection не предусматривает, чтобы его Item"ы не были потомками TCollectionItem. Поэтому поработать все же придется, хотя и немного.

1. Создаем свой TControlCollectionItem, вводя в него published-свойство Control: TControl с методом Set (последний нужен для задействования стандартного механизма FreeNotification через компонент-владелец коллекции - при удалении Control"а ссылка на него должна быть очищена).

2. Создаем свой TControlCollection, в котором класс Item"ов переопределен на TControlCollectionItem.

3. Создаем компонент TControlLinks, который будет выступать владельцем коллекции (его основная роль - очистка ссылок на контролы в своем Notification).

Вот и все. Кладем этот компонент на форму - и получаем коллекцию ссылок на контролы с возможностью ее настройки в design-time.



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

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



Память: 0.45 MB
Время: 0.013 c
14-78595
cyborg
2002-09-29 22:52
2002.10.24
---|Ветка была без названия|---


3-78239
brestmarket
2002-10-01 01:44
2002.10.24
Проблема при сжатии ADO-database при помощи JetEngine.CompactData


14-78611
NickBat
2002-10-03 11:54
2002.10.24
Больше 5-10 ответов на вопрос треп?


6-78580
VID
2002-08-21 12:41
2002.10.24
Как научить TClientSocket/TserverSocket работать через прокси ?


1-78455
Alex
2002-10-12 13:46
2002.10.24
Rave




   Наверх