Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать индекс компонента в списках controls по его имени?


Franzy ©   (2006-07-04 22:10:00) 

Как узнать индекс компонента в списках controls (components) по его имени, если это вообще возможно? Имеется в виду, во время выполнения программы.

И еще вопрос, схожей тематики: как вообще ссылаться на компонент по имени, если имя - строка? Типа так как-нибудь:
Form1.controls['Button'+inttostr(i)]


Franzy   (2006-07-05 00:10:00) [1]

Ну я же говорю, это не проблема. Как говорится, typecasting to the rescue! :)


Leonid Troyanovsky   (2006-07-04 22:40:00) [2]


> Franzy   (04.07.06 22:38) [3]

> Первый вопрос, можно сказать, решился. Можно узнать индекс
> компонента в списке компонентов своего владельца:


Контролы, в отличии от компонентов, практически всегда
имеют парента, а не, скажем, nil.

--
Regards, LVT.


Franzy   (2006-07-04 22:38:00) [3]

Поискал во встроенной помощи, вот что нашел.
Первый вопрос, можно сказать, решился. Можно узнать индекс компонента в списке компонентов своего владельца:
myComponent.componentIndex;

С контролами так нельзя :( Но и на том хорошо. На второй вопрос ответ есть, так что все ОК :) Спасибо!!!!


Leonid Troyanovsky   (2006-07-04 22:37:00) [4]


> Franzy   (04.07.06 22:10)  

> Как узнать индекс компонента в списках controls (components)
> по его имени, если это вообще возможно? Имеется в виду,
> во время выполнения программы.


for i := 0 to ControlCount-1 do ShowMessage(Controls[i].Name)

--
Regards, LVT.


Dmitrij_K   (2006-07-04 22:18:00) [5]

см FindComponent


Наверх

Титульная страница Поиск, карта сайта Написать письмо