Einzelnen Beitrag anzeigen

Wurstuk

Registriert seit: 19. Aug 2010
8 Beiträge
 
#5

AW: Such function in FileListBox Funktioniert nicht richtig

  Alt 20. Aug 2010, 12:10
So ich Hab gestern Abend noch viel rumm probiert und es sieht jetzt so aus:

Delphi-Quellcode:
procedure TForm4.edit_sucheChange(Sender: TObject);
var i : integer;
begin
  i := 0;
  while i <= FileListBox1.Count -1 do
  begin
    if length(edit_suche.Text) > 0 then //Wenn das edit feld nicht leer ist...
    begin
      if (Pos(edit_suche.Text, FileListBox1.Items[i]) = 1) then //...teste ob der such text ab der ersten stelle im dateinamen vorkommt
      begin
        i := i + 1; //wenn ja, tu nichts und wechsel auf die nächste datei
      end
      else
      begin
        FileListBox1.Selected[i] := true; // Wenn nicht Makiere die datei und lösche sie
        FileListBox1.DeleteSelected;
        i := i + 1; // Wechsel auf die nächste Datei
      end;
    end
    else
    begin
      i := fileListbox1.count; // While Schleife wird unterbrochen.
    end;
  end;
end;
Ich hab aber irgendwo einen denkfehler drinn denn eigentlich wenn ich z.B ein W eingebe und es gibt nur eine Datei mit einem W an erster stelle sollte nur noch die Datei mit dem W zusehen sein. Aber es ist ungefähr nur noch die hälfte drinn.... wenn ich dann mehr buchstaben eingebe wird zwar das gesucht ergebnis alleine angezeigt aber ab 4 Buchstaben wird nicht mehr weiter verglichen ein Bsp: Ich hab eine datei die simpsons.txt und eine die simpsons_ver2.txt heißt wenn ich jetzt simpsons eingebe werden zwar nur noch die beiden dateien angezeigt aber auch wenn ich simpsons_ver2.txt eingebe werden trotzdem beide Dateien angezeigt. Ich hab oben nochmal eingetragen wie ich denke das der code funktioniert.

Danke für den Hinweis das die Parameter vertauscht sind^^

edit: Das mit den 4 buchstaben ist jetzt weg. Habe aber immer noch das Problem das er beispielsweise bei einem w auch noch dateien anzeigt die gar kein w in ihrem namen haben...

Geändert von Wurstuk (20. Aug 2010 um 14:52 Uhr)
  Mit Zitat antworten Zitat