![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
На форме находится несколько Editbox. Надо с них считать данные. Написал код, которые почему-то не работает. Помогите пожалуйста!
Код:
procedure vvod_massiv;
var c: text;
begin
for i:=1 to n do
begin
c:=TEdit(Findcomponent('Edit'&IntToStr(i))).caption;
if c='' then a[i]:=0 else a[i]:=StrToInt(c);
end;
end;Последний раз редактировалось Admin, 06.11.2017 в 18:21. |
|
#2
|
|||
|
|||
|
Edit'ы на форме лежат или на др. компоненте типа TPanel, TGroupBox?
Если да, то искать их надо там, а не на форме. |
|
#3
|
|||
|
|||
|
Просто на форме.
Там еще ошибка: не caption, а соответственно text |
|
#4
|
|||
|
|||
|
Там еще есть ошибка.
Вот так работает: Код:
procedure TForm2.Button1Click(Sender: TObject);
const
n = 5;
var
i : integer;
s : string;
c : TComponent;
begin
s := '';
For I := 1 To n Do
begin
c := FindComponent('Edit'+IntToStr(I));
If c <> Nil Then
If (c as tedit).Text <> '' Then
s := s + (c as tedit).Text + ' ';
end;
ShowMessage(s);
end; |
|
#5
|
|||
|
|||
|
>компоненте типа TPanel, TGroupBox?
На них надо искать Controls, а Components - именно на форме |
| Этот пользователь сказал Спасибо icWasya за это полезное сообщение: | ||
Guaho (08.11.2017)
| ||
|
#6
|
|||
|
|||
|
Спасибо!!Заработало!
|