Witam.
Szukałem, próbowałem i pozostało forum .. o ile się tak da.
Mam taką główną pętlę:
for j:= 0 to Count -1 do
begin
With TPanel.Create(ScrollBox) do
begin
Parent:= aScrBox;
Font := Font;
Name:='Panel'+IntToStr(j); // nadanie nazwy przyciskowi
Caption:= Name;
Width := 30;
Height := 21;
Top := j *Height +1;
Left := 0;
Align:= alTop; // alTop;
Visible:=True;
end;
end;
Jak widać tworze sobie na ScrollBox-ie Count paneli. A teraz gwóźdź programu, na tych TPanel chciałbym umieścić np. dla przykładu i odróżnienia TLabel i TButton.
Standardowo można oczywiście zrobić listę dynamiczną z rekordem zawierającym TPanel, TLabel, TButton ale zastanawiam się czy nie można np utworzyć Labela i Buttona na podstawie nazwy tekstowej Panela Panel+IntToStr(j). Próbowałem wykorzystać Find przy tworzeniu ale był problem z Parent i tu się moje pomysły skończyły.
Tak więc proszę o podpowiedź jak tworzyć i jeśli się da jak potem się do takich komponentów odwoływać. Może jakiś tymczasowy rekord z komponentami w procedurze (nie globalny), który jako jeden byłby w pętli wywoływany ..
Dla uściślenia przy odwoływaniu miało by to działać w stylu:
TLabel( komponent_rodzic_TPanel('Panel'+IntToStr(j)) ).Caption:= 'coś tam'