Mam plik komponenty.txt
w pierwszej lini (0) znajduje się liczba [n] wieksza od 0 - jest to liczba komponentów, które ma program utworzyć. w następnych liniach podane są cptiony tych komponentów. Jaki kod trzeba dać, aby program czytając plik tworzył te komponenty. (wcześniej nie wiem ile ich będzie, ale max to 20). Jak je potem usunąć?
- Rejestracja:około 23 lata
- Ostatnio:ponad 2 lata
- Postów:1164
- Rejestracja:ponad 22 lata
- Ostatnio:około 14 lat
- Postów:384
var buttony : array of TButton;
slowo:string;
x,i:integer;
plik: TextFile;
begin
AssignFile(plik,'c:\plik.txt');
Reset(plik);
ReadLn(plik,x);
For i:=1 to x do
begin
SetLength(buttony,i);
Buttony[i-1] := TButton.Create(Self);
Buttony[i-1].Parent:=Self;
ReadLn(plik,slowo);
Buttony[i-1].Caption := slowo;
end;
CloseFile(plik);
end;
- Rejestracja:około 23 lata
- Ostatnio:około 13 lat
Można wywalić pierwszą linijkę z ilością komponentów i zrobić tak:
var
buttony:array of tbutton;
tmp:tstringlist;
j:integer;
tmp:=tstringlist.create;
tmp.loadfromfile('plik.txt');
setlength(buttony, tmp.count);
for j:=0 to tmp.count-1 do
begin
buttony[j]:=tbutton.create;
buttony[j].left:=0;
buttony[j].height:=20;
buttony[j].top:=j*20;
buttony[j].caption:=tmp[j];
end;
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.