Hallo zusammen,
Ich habe eine Anwendung, die ihre Logdateien über mehrere Verzeichnisse verteilt. Also schnell ein Form mit einem Pagecontrol erstellt.
Für jede gefundene Logdatei soll jetzt auf dem Pagecontrol ein Tabsheet erstellt werden und auf jedem Tabsheet ein Memo.
Ich hab mir aus mehreren Beispielen meinen Source zusammengeklöppelt, aber ich werde das Gefühl nicht los, das er etwas suboptimal ist, vor allem was Parent und Owner angeht. Könntet Ihr bitte einmal darüber schauen und mich korrigieren:
Delphi-Quellcode:
var
marr : array of tmemo;
ll : tstringlist;
.....
{ ll enthält Dateinamen }
if ll.count>0 then
setlength(marr,ll.count-1);
for i:=0 to ll.count-1 do begin
with TTabSheet.Create(pagecontrol1) do begin
PageControl := PageControl1;
Caption := ll[i];
end;
marr[i]:=tMemo.Create(self);
marr[i].parent:=pagecontrol1.pages[i];
marr[i].Align:=alClient;
marr[i].ScrollBars:=ssBoth;
try
marr[i].Lines.loadfromfile(ll[i]);
except
marr[i].text:='**** '+#13#10+
ll[i]+#13#10+
' konnte nicht geöffnet werden'+#13#10+
' **** ' ;
end;
end;
Das "Aufräumen" fehlt noch, da hab ich mir etwas in dieser Art vorgestellt:
Delphi-Quellcode:
for i:=0 to Pagecontrol1.pages.count-1 do
Pagekontrol1.Pages[i].free; {mit automatischer Freigabe der Memos !? }
Vielen Dank
K-H