Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Вниз

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


Максимка   (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 ,со всеми вытекающими из этого последствиями




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.012 c
3-57031           Alexandr1             2002-01-25 08:06  2002.02.18  
Где найти образец оформленной документации на БД ? Спасибо.


3-57024           Андре                 2002-01-24 09:41  2002.02.18  
Отладка хранимых процедур.


14-57199          Knight                2001-12-28 11:58  2002.02.18  
Всех с праздниками, вопросик несколько хакерский но просто срочно понадобилось!!!


4-57270           ALEX_RUUU             2001-12-19 01:13  2002.02.18  
WIN API


1-57146           Loxly                 2002-02-03 19:57  2002.02.18  
Создание формы приводит к ее появлению