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

Вниз

Как создать цикл, который изменит настройки нескольких компонент   Найти похожие ветки 

 
Zloy ©   (2004-11-17 17:27) [0]

Приветствую!!!
Дело такое, есть предположим на форме 10 компонет Edit,
и нужно изменить состояние visible. Можно конечно просто написать:
edit1.visible:= false;
edit2.visible:= false;
....
Но как это сделать в цикле, что то типа
for i:= 0 to 10 do
begin
With Edit[i] do  //так конечно не получается сразу ругается что нет такой компоненты как Edit
begin
Visible:= false;
end;


 
begin...end ©   (2004-11-17 17:32) [1]

var
 I: Integer;

begin
 for I := 0 to MyForm.ControlCount - 1 do
   if MyForm.Controls[I] is TEdit then
     MyForm.Controls[I].Visible := False
end.


 
Digitman ©   (2004-11-17 17:33) [2]

форма - это наследник TComponent

любой объект-наследник класса TComponents имеет св-во-список Components[] и св-во СomponentCount.. отсюда и пляши ..

при выборке очер.элемента списка проверяй, является ли он наследником TEdit


 
Jay   (2004-11-17 17:43) [3]

Можно так:
var
 ed: TEdit;
 i: Byte;

for i := 1 to 10 do
begin
 ed := TEdit(FindComponent("Edit" + IntToStr(i));
 ed.Visible := false
end

Вроде так.


 
YurikGL ©   (2004-11-17 20:35) [4]

EditArr:array[1..20] of TEdit

Потом создаешь их где надо, а дальше

EditArr[1].text:="Первый едит"
....



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

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

Наверх




Память: 0.47 MB
Время: 0.123 c
14-1100776312
Pentium133
2004-11-18 14:11
2004.12.05
Знатоки CVS


1-1101112928
Vn
2004-11-22 11:42
2004.12.05
Значение max высоты формы во время ее создания.


1-1100772457
keymaster
2004-11-18 13:07
2004.12.05
Проблема с округлением


3-1099553813
Брат
2004-11-04 10:36
2004.12.05
Создание хранимой процедуры программно


4-1098342720
gris
2004-10-21 11:12
2004.12.05
Простой вопрос! Подскажите, как узнать серийный номер сетевой кар