Also, TStrings ist selbst direkt nicht nutzbar. Sie dient als Basisklasse für andere Klasse, wie z. B. TStringList. Trotz dem kannst du aber TStrigs für die Übergabe nutzten, aber auch nur dafür, d. h. versuche nicht eine Liste draus zu machen wie bei TStringList.
Beispiel:
Unit2
Delphi-Quellcode:
interface
procedure MyList(List: TStrings);
implementation
procedure MyList(List: TStrings);
begin
List.Clear;
List.AddStrings(Screen.Fonts);
end;
Unit1
Delphi-Quellcode:
uses
Unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
MyList(ListBox1.Items);
end;
Das klappt.
Unit1
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
sl: TStringList;
begin
sl := TStringList.Create;
try
MyList(sl);
ShowMessage(sl.Text);
finally
sl.Free;
end;
end;
Das klappt auch.
Was machst du also anders?