Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.24;
Скачать: 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.027 c
1-78407
DAXg
2002-10-11 23:45
2002.10.24
Ув. Мастера, как можно узнать, запущена ли программа C: proga pro


1-78469
Gregory
2002-10-09 20:36
2002.10.24
Сортировка в TListView


3-78218
Rom Shell
2002-10-04 11:18
2002.10.24
Переиндексация


1-78319
GIL
2002-10-08 04:15
2002.10.24
FrontPage


7-78689
Vald2000
2002-08-19 13:09
2002.10.24
эмуляция принтера .