Komponenty możesz przechowywać w tablicy, wskaźniki na nie - w obiekcie typu TList, a obiekty wraz z tekstem możesz
także na przykład dodawac do TStringList i obiektów takich jak ComboBox ListBox, ListView czy Memo. Do wyszukiwania
komponentów po nazwie używasz funkcji FindComponent. Zarówno jej użycie jak i Components[Index] czy Controls albo
ComponentCount znajdziesz na mńóstwie stron w google, a opis w helpie od Delphi. Poniżej tylko prosty przykład. Bo to
w sumie jest tak banalne, że nie ma co tutaj się więcej rozpisywać i tlumaczyć, wszystko już zostalo wiele razy na tym i
forum i nie tylko omówione. W praktyce przećwicz użycie tych rzeczy sam, komputer Ci od tego raczej nie wybuchnie ;)
//...
const
CzlonNazwyEditow = 'Edycik';
implementation
{$R *.dfm}
procedure TForm1.Edycik1KeyPress(Sender : TObject; var Key : Char);
var
Idx : Byte;
begin
with Sender as TEdit do
begin
if Key = #13 then
begin
Idx := Self.FindComponent(Name).Tag;
if TEdit(Self.FindComponent(CzlonNazwyEditow + IntToStr(Idx + 1))) <> nil then
begin
TEdit(Self.FindComponent(CzlonNazwyEditow + IntToStr(Idx + 1))).SetFocus;
end
else
begin
TEdit(Self.FindComponent(CzlonNazwyEditow + IntToStr(1))).SetFocus;
end;
end;
end;
end;
procedure TForm1.FormCreate(Sender : TObject);
var
Idx : Byte;
I : integer;
Edt : TEdit;
begin
Idx := 1;
for I := 0 to Self.ComponentCount - 1 do
begin
if (Self.Components[I].ClassType = TEdit)
and (Pos(CzlonNazwyEditow, Self.Components[I].Name) > 0) then
begin
Edt := TEdit(Self.Components[I]);
Edt.Tag := Idx;
Edt.OnKeyPress := Edycik1KeyPress;
Idx := Idx + 1;
end;
end;
end;