Главная страница
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.027 c
1-1101300335
Zhekson
2004-11-24 15:45
2004.12.05
Как при отлове ошибки в try...except выскочить в определённое м.


4-1098081869
Slonco
2004-10-18 10:44
2004.12.05
Как оборвать проигрывание звука при помощи кнопки?


8-1091099262
WondeRu
2004-07-29 15:07
2004.12.05
DirectShow. Как воспроизвести сразу 2 видеокамеры?


14-1100495172
KSergey
2004-11-15 08:06
2004.12.05
Поставить Win9x рядом с Win2k


11-1083328166
Max Kozlov
2004-04-30 16:29
2004.12.05
Application.Terminate