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

Вниз

Доступ к динамически создаваемому компоненту???   Найти похожие ветки 

 
Mishenka   (2004-10-18 16:50) [0]

На форме динамически создаётся куча ComboBox"ов. Как получить к ним потом доступ, учитывая порядок создания (тобишь отличить какой из них создался 5-ым, а какой 10-ым). В массиве формы Components созданные компоненты располагаются в порядке создания или могут располагаться и по другому?


 
begin...end ©   (2004-10-18 16:55) [1]

А как же ты к ним обращаешься после создания? Ищешь каждый раз на форме? В смысле, может быть, у тебя есть свой массив или набор переменных? А в общем-то, довольно простое решение - запоминать при создании номер в Tag.


 
Ega23 ©   (2004-10-18 16:55) [2]

При создании давай им разные имена, или, например, в Tag значения разные прописывай.


 
Mishenka   (2004-10-18 17:07) [3]

Ну так мне нужно получать к ним доступ в порядке создания. А при записи в Tag, придётся каждый раз их сортировать по тагам.


> begin...end ©   (18.10.04 16:55) [1]
> А как же ты к ним обращаешься после создания?

Да я их забил в TList и дёргал оттуда, но вот подумал, что не гуманно так засорять оперативную память...


 
begin...end ©   (2004-10-18 17:08) [4]


> [3] Mishenka   (18.10.04 17:07)

Ну тогда массив. Добавляй по порядку, и всё.


 
Mishenka   (2004-10-18 21:51) [5]

Массив это тоже в оперативке. Может есть другие мнения?


 
begin...end ©   (2004-10-18 22:09) [6]


> [5] Mishenka   (18.10.04 21:51)

По сравнению с просто добавлением на форму, ты в случае массива теряешь 4 байта на каждый созданный объект. Это так критично?


 
xmrz   (2004-10-18 22:28) [7]

А чем тебе TList плох? Класс всё равно включен в твое приложение, т.е. от exe-шника место всё равно отъест, а работа со списком более очевидна чем с массивом. А ну потом тебе потребуется удалять произвольные элементы, вставлять в середину?


 
Rouse_ ©   (2004-10-18 23:34) [8]

> Да я их забил в TList и дёргал оттуда, но вот подумал, что
> не гуманно так засорять оперативную память...

Не гуманно... Зачем создавать объект, когда модно обойтись обычным массивом? Ну а уж доступ к ним получить...

> Массив это тоже в оперативке. Может есть другие мнения?
Стало быть сами объекты у тебя создаются не там?
Не переживай, в итоге ты получишь лишь массив указателей Count mul 4 = не такой уж и большой объем (как ты думаешь).
Возьми к примеру обычный String, сколько памяти теряешь? Length()?
Нет... -8 + -4 + String + #0 = ???



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
1-1098255088
BillyJeans
2004-10-20 10:51
2004.10.31
Как отловить окончание изменения TrackBar


8-1090659273
crizis
2004-07-24 12:54
2004.10.31
как убрать мерцание с помощью двойной буферизции


4-1095874114
ASDee
2004-09-22 21:28
2004.10.31
ид по хэндлу?


3-1096464925
Хома
2004-09-29 17:35
2004.10.31
Connect to Informix


3-1096551759
intaari
2004-09-30 17:42
2004.10.31
Установка BDE вместе с прогой