Вниз
Скачать: CL | DM;

Как обращаться к однотипным компонентам по их номерам?   Найти похожие ветки 

 
Максимка   (2002-02-02 14:11) [0]

Вопрос у меня скорее умозрительный: например, имеются компоненты, скажем, TEdit в количестве 30 штук (TEdit1, TEdit2,...,TEdit30). И предположим, я хочу содержание их полей ввода перенести в массив. Как это сделать, не перебирая их всех по одному, а обращаясь в цикле по номеру ?


 
Vovchik ©   (2002-02-02 14:15) [1]

Можно использовать св-во Components[i] у владельца, а у твоих едитов сделать св-ва Tag от 0 до чего-то.


 
Максимка   (2002-02-02 15:13) [2]

Хотелось бы также узнать об этом поподробнее.


 
Vovchik ©   (2002-02-02 15:19) [3]

Я щас не на своём компе и скоро свалю. Поэтому пиши мыло.
А что подробнее? Ну, типа:

procedure TForm1.ChegoToDelay(Sender:TObject);
var
MyArray:array[0..29] of integer;
begin
for i:=0 to ComponentCount-1 do
begin
if Components[i] is TEdit then
MyArray[Components[i].Tag]:=StrToInt(TEdit(Components[i]).Text);
end;
end;

Не пойдёт такое?


 
Anatoly Podgoretsky ©   (2002-02-02 16:35) [4]

FindComponent("TEdit"+IntToStr(I)) вернет то что нужно, без сканировния массива Components и использования свойства Tag ,со всеми вытекающими из этого последствиями



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
3-56990
vopros
2002-01-23 13:57
2002.02.18
Индексы изнасиловали меня в конец...


7-57232
Zevsus
2001-11-13 00:28
2002.02.18
Запускаем процесс, идем его завершения или сворачивания и обрабатываем сие событие..


1-57137
Иля
2002-02-03 13:39
2002.02.18
Automation objec


1-57131
M@XIDROM
2002-02-03 15:46
2002.02.18
Картинку преобразовать в указанном размере


14-57221
ProfiUgl
2001-12-27 16:07
2002.02.18
Откуда можно скачать Update Pack 1 для Delphi5 и ADO Express Update 1 и 2




   Наверх