Um noch ein paar Fehler mehr aufzulisten:
autorfeld.Text:=suchbegriff;
Ist wohl andersrum gemeint.
gefunden:=n;
Du hast n nichts zugewiesen, was soll das bringen?
Listenfenster.Items.Strings[i];
Da steht einzeln in Zeile 10, was soll das bringen?
i:=+1;
Sollte wohl:
Delphi-Quellcode:
i := i + 1;
// oder
Inc(i);
heißen.
Hier mal ein kleiner Vorschlag:
Delphi-Quellcode:
var
Search, Author, ItemStr: String;
I: Integer;
Found: Boolean;
begin
Search := Edit1.Text;
Found := false;
for I := 0 to ListBox1.Count - 1 do
begin
ItemStr := ListBox1.Items[I];
Author := Copy(ItemStr, 1, Pos(#45, ItemStr));
if Pos(Search, Author) > 0 then
begin
ShowMessage('Autor: "' + Author + '" gefunden' + #13#10 + 'Index: ' +
IntToStr(I));
Found := true;
end;
end;
if (not (Found)) then
ShowMessage('Sorry, kein Autor gefunden');
end;