Delphi-Quellcode:
procedure searchfunc(const Anzeige:TStrings; Ripping:Strings; Input:string; Progressbar:Tprogressbar; Percent:Tlabel; Found:Tlabel );
var i,poss:integer;
percents:extended;
searchline,strclear:string;
begin
Anzeige.Clear; // Die Anzeige säubern
for i := 1 to ripping.count{-1} do
begin
searchline:=Ripping[i]; // Die Zeilen zuweisen indenen gesucht werden soll
poss := Pos(''+input.text+'', searchline); // Überprüfen ob richtiger Wer gefunden wurde
Application.ProcessMessages; // Prozess-Messages damit das Programm reagiert
percents:=i*100/Ripping.count; // Prozentsatz mit 3-Satz ausrechnen
percents:=RoundToPointPosition(percents,0); // Runden der % Zahl auf ganze Zahlen
strclear:=floattostr(percents); // Umwandlung der FLot-Zahl in einen String
ProgressBar.Position:=strtoint(strclear); // Umwandlung in einen Integer Wert für die Progressbar
Percent.caption:=''+floattostr(percents)+'%'; // Vortschrits% Label
Found.caption:=''+inttostr(Anzeige.count)+' results for '+input.text+'';// Anzeige der gefundenen Resultate für "input"
if Poss <> 0 then
Anzeige.add(searchline); // Wenn gefunden wird nun die Zeile hinzugefügt wo der Wert gefunden wurde
end;
if Anzeige.lines.count=0 then
Anzeige.add('No results found for '+input.text+'');
end;
Etwas Sauberer und! vllt. will das jmd. in einem RichEdit verwenden...
nimm TStrings, ich habs schon eingefügt!
mfg