Avatar billede cybernostradamus Nybegynder
02. oktober 2001 - 17:42 Der er 7 kommentarer og
2 løsninger

Søge-funktion..

Jeg skal bruge en søge-funtion.. Man kan indtaste en input-værdi, hvorefter den søger og viser alle resultaterne i en ListBox.
Den skal enten søge bland nogle filer.. f.eks. hvis jeg har et dir med filer:

test1
test2
test3
tester10
testeren

så hvis jeg giver som input \"teste\" skulle den gerne vise \'tester10\' og \'testeren\' i en ListBox - eller en anden metode:
Jeg har en tekstfil med samme indhold (filnavnene) og så søger den i den og viser de navne der indeholder det... Hvad er den letteste mulighed? Og findes der en funktion man kan bruge?
Avatar billede unclebug Nybegynder
02. oktober 2001 - 18:03 #1
Bare et hint: FindFirst, FindNext og så Pos. Så er du godt begyndt :o)
Avatar billede ziron Nybegynder
02. oktober 2001 - 18:08 #2
unclebug >> godt begyngt, det er alt hvad han skal bruge...

/ZIRON
Avatar billede unclebug Nybegynder
02. oktober 2001 - 18:11 #3
Jooo, men det skal jo også lige laves først, ik\'?
Avatar billede ziron Nybegynder
02. oktober 2001 - 18:13 #4
ja men det er da ikke det sværer hvis man har de funktioner man skal bruge, synes altid at det er sværes at finde frem til funktionerne...

/ZIRON
Avatar billede cybernostradamus Nybegynder
02. oktober 2001 - 19:40 #5
Jeg kiggede i FindNext-eksemplet i Delphi6 - men den gi\'r compiler-errors...
Avatar billede cybernostradamus Nybegynder
02. oktober 2001 - 19:44 #6
FindFirst even
Avatar billede martinlind Nybegynder
02. oktober 2001 - 20:39 #7
Du kan hente \"Scaner\" comp. på www.e-lind.dk
den kan det du ønsker, mht. filer i et bib.
Avatar billede stoney Nybegynder
07. oktober 2001 - 02:04 #8
Drop en button + edit + listbox


procedure FindAll (const Path: String;
                        Attr: Integer;
                        List: TStrings);
var
  Res: TSearchRec;
  EOFound: Boolean;
begin
  EOFound:= False;
  if FindFirst(Path, Attr, Res) < 0 then
    exit
  else
    while not EOFound do begin
      List.Add(Res.Name);
      EOFound:= FindNext(Res) <> 0;
    end;
  FindClose(Res);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
FindAll(\'C:\\winnt\\*\' + edit1.text + \'*\',faAnyFile,ListBox1.Items);

end;


Stoney
Avatar billede cybernostradamus Nybegynder
08. oktober 2001 - 08:11 #9
Jeg arbejder stadig med Scaner - men tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester