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

Вниз

Поиск компонентов по наименованию.   Найти похожие ветки 

 
kyn66 ©   (2006-03-06 13:32) [0]

Уважаемые мастера, у меня на форме есть некоторое количество Label, полученых в RunTime. Каким образом мне получить их Caption? Я делаю так:

 for i := 0 to 50 do
  if TLabel(FindComponent("GLabel_" + IntToStr(i + 1))) <> nil then
  St.Add(TLabel(FindComponent("GLabel" + IntToStr(i + 1))).Caption)
  else
    St.Add("0");

В данном коде мне приходится принудительно дважды использовать FindComponent. А как проверить, чтобы FindComponent использовался тока 1 раз, типа

 for i := 0 to 50 do
  with TLabel(FindComponent("GLabel_" + IntToStr(i + 1))) do
    begin
      if ??? <> nil then
       St.Add(Caption)
      else
       St.Add("0")
    end;


 
MBo ©   (2006-03-06 13:35) [1]

var Compon: TComponent;
 Compon:=FindComponent...
 if Compon ...


 
kyn66 ©   (2006-03-06 13:56) [2]

Я так пробывал, выдает ошибку, говорит Compon.Caption - нет такого.


 
GrayFace ©   (2006-03-06 13:58) [3]

TLabel(Compon).Caption


 
Алхимик ©   (2006-03-06 13:59) [4]

У Compon: TComponent нету свойства Caption. Нужно преобразование типов, например:
if Compon is Tlabel then
  TLabel(Compon).Caption := ...


 
kyn66 ©   (2006-03-06 14:33) [5]

Заработало! Спасибо !!!



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
15-1141041655
Test Your Soft Team
2006-02-27 15:00
2006.03.26
Акция "Оцени свой софт"


2-1141913478
Новочеркасский Волк
2006-03-09 17:11
2006.03.26
Интересные компоненты.


2-1141633499
I am
2006-03-06 11:24
2006.03.26
Как добавить язык в систему?


15-1141345693
Alsan
2006-03-03 03:28
2006.03.26
Как изменить код в DLL


2-1140887696
Новочеркасский Волк
2006-02-25 20:14
2006.03.26
Нажата ли клавиша вообше???