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

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

TEdit


Страницы:   1 2

Evgenxxxx ©   (2005-12-06 16:46:00) 

Допустим у меня много едитов edit1, edit2,.... и с каждого мне нужно прочитать инфрмацию и занести её в массив например:
For i:=1 to n do
begin
 array[i]:=edit_i.text;  ???????????????????????????????????
end
как это можно реализовать?


Evgenxxxx   (2005-12-07 08:39:00) [21]

Как я понял из примера здесь на одном компоненте формы 1 Edit а у меня их несколько. Вся сложножность заключается в том что я не знаю заранее сколько Editов у меня будет. Это определяется программно пользователем. Поетому мне их необходимо считывать через цикл


VitGun   (2005-12-06 19:08:00) [22]

Сорри...так будет правильнее.....

j:=0;
for i:=0 to form1.ComponentCount-1 do
begin
 if form1.Components[i] is TEdit then
  begin
   Myarray[j]:=(form1.Components[i] as TEdit).Text;
   inc(j);
  end;
end;


VitGun   (2005-12-06 19:01:00) [23]

Вот так пропробуй.

for i:=0 to form1.ComponentCount-1 do
 begin
  if form1.Components[i] is TEdit then
   begin
    Myarray[i]:=(form1.Components[i] as TEdit).Text;
   end;
 end;


EvgenXXXX   (2005-12-06 18:44:00) [24]


> Если все эдиты "лежат" в одном контейнере (например, панели),
>  то в случае, если порядок по барабану, то так
>
> j := 0;
> for i := 0 to Panel1.ControlCount-1 do
>   if Panel1.Controls[i].ClassType=TEdit then
>     begin
>      ArrayA[j] := TEdit(Panel1.Controls[i]).Text;
>      inc(j);
>     end;


Все Editы находятся на разных вкладках компонента TPageControl


Digitman   (2005-12-06 17:09:00) [25]


> Допустим у меня много едитов


на Луне ? или таки эти самые твои "едиты" имеют в кач-ве владельца какой-то строго определенный компонент ?


msguns   (2005-12-06 17:08:00) [26]

Если все эдиты "лежат" в одном контейнере (например, панели), то в случае, если порядок по барабану, то так

j := 0;
for i := 0 to Panel1.ControlCount-1 do
  if Panel1.Controls[i].ClassType=TEdit then
    begin
     ArrayA[j] := TEdit(Panel1.Controls[i]).Text;
     inc(j);
    end;


Leonid Troyanovsky   (2005-12-06 16:49:00) [27]


> Evgenxxxx   (06.12.05 16:46)  
> как это можно реализовать?


TStringGrid.
Можешь считать его Cells - массивом.

--
Regards, LVT.


Страницы:   1 2

Наверх

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