![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Есть проблема переноса текстовых данных в массив. Организовано так, что имеется несколько кнопок и каждой соответствует свой Edit. Необходимо заполнять массив в той же последовательности, что и нажатие кнопок. Количество строк в массиве - фиксированное. Массив - одномерный.
Заранее благодарю! P.S. есть вариант, что массив и кнопки находятся на разных формах Последний раз редактировалось n_ss, 17.02.2018 в 21:24. |
|
#2
|
|||
|
|||
|
Нифига непонятно что делать.
Ну пусть будет так, как написано. Unit2 (с массивом): Код:
unit Unit2; uses ... interface ... var A : Array [1..10] Of String; aC : Integer; implementation ... initialization aC := 0; end. Unit1, c формой и кнопками и эдитами. У кнопок и эдитов проставлен Tag (одинаковый для пары). У всех кнопок один и тот же обработчик событий ButtonClick (назначить в инспекторе): Код:
uses Unit2;
procedure TForm1.ButtonClick(Sender : TObject);
var
I : Integer;
T : Integer;
begin
If (Sender Is TButton) Then
Begin
T := (Sender As TButton).Tag;
For I := 0 To ComponentCount-1 Do
If (Components[i] Is TEdit) Then
If (Components[i] As TEdit).Tag = T Then
Begin
If aC < High(A) Then
Begin
Inc(aC);
A[aC] := (Components[i] As TEdit).Text;
End;
Break;
End;
End;
end;Т.е. код добавляет в массив строки, пока массив не заполнится. Последний раз редактировалось lmikle, 18.02.2018 в 00:59. |
|
#3
|
||||
|
||||
|
А мне вот так почудилось
|