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

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

Run-time создание компонент [D4, D5, Win95/98]


Геральт ©   (2002-02-03 21:18:00) 

Как создать в режиме run-time несколько однотипных компонент (TCheckBox)? Конструкция с циклом for и при одной переменной New:TCheckBox вызывает в дальнейшем ошибку при обращении к созданным компонентам с помощью FindComponent. Массивы я бы не хотел использовать. Или у меня нет выбора?


Геральт   (2002-02-06 15:46:00) [1]

DMN - понял, учту на будующее


DMN   (2002-02-04 11:26:00) [2]

Потому, что усли писать tcheckbox.create(ScrollBox1), то и FindComponent надо вызывать от ScrollBox"a: ScrollBox1.FindComponent(...).


Геральт   (2002-02-04 10:10:00) [3]

Спасибо, все работает, видимо мне вместо tcheckbox.create(ScrollBox1) надо было писать tcheckbox.create(self). Хотя почему, я честно говоря пока не понял. Но это уже не важно. Еще раз спасибо


Atrem   (2002-02-03 23:17:00) [4]

По идеи так
var i:integer;
for i:=1 to 20 do with tcheckbox.create(self) do
begin
name:="Check"+inttostr(i);
parent:=form1;
end;


Anatoly Podgoretsky   (2002-02-03 22:21:00) [5]

Неплохо бы объекту дать имя, для поиска с помощью FindComponent и Parent := Self;
Также не помещает убрать переменную New как ненужную


Вадим   (2002-02-03 22:00:00) [6]

var
new: TCheckBox;
i: integer;
begin
for i := 1 to 20 do
begin
new := TCheckBox.Create(self);
new.Parent := Form1;
end;
end;


Наверх

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