Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Индексы компонентов


Автор: able1985 26.8.2006, 05:22
Люди, подскажите, если кто знает, возможно ли в BCB6.0 перечисление компонентов по индексу?
Я имею в виду: использовать Label[i], а не Label1. Может, я просто неправильно это написал?

Автор: Bima 26.8.2006, 07:45
вот пример, который может тебе помочь:
создаем 10 Label на форме.
у каждого Label в свойствах Tag прописываем порядковый номер от 1 до 10. Если пропишешь одинаковые, то можно обратится сразу к нескольким компонентам. Пототм используешь данный код:

Код

int a=5;
for (int i=0; i<ComponentCount; i++)
   if (((TLabel*)Components[i])->Tag==a)  ((TLabel*)Components[i])->Caption="Select";


В этом коде 5 компоненту на форме делается надпись - Select.

Пример писал на память, так-что возможны ошибки, но суть я тебе показал.

можно также еще выбирать и по имени компонента:
Код

    if (((TLabel*)Components[i])->name=="Label3")  ((TLabel*)Components[i])->Caption="Select";

Здесь компоненту Label3 пишется слово - Select

Автор: Link90 26.8.2006, 07:48
Создавай массив компонентов динамически, тогда к ним мржно будет обращяться по Индексу

Автор: Xela 7.9.2006, 11:13
http://forum.vingrad.ru/index.php?showtopic=110464&unread=1&hl=tlabel

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)