trrunde Skrevet 25. november 2003 Del Skrevet 25. november 2003 Hei har laget et program som søker i en mappe eller harddisk etter film filer, dette blir lagt til i en listbox hvordan kan jeg søke etter en fil som er i listboxen? Og hvordan kan jeg søke slik at den også finner skjulte og system filer? Lenke til kommentar
kilogram Skrevet 25. november 2003 Del Skrevet 25. november 2003 For søking i ein listbox, benytter du følgende kode (ikkje testa). Dersom det er fleire like verdiar i lista, vil den returnere nummeret på den siste. function FinnIListbox(Listbox: TListBox; Finn: String): Integer; var n: Integer; begin for n := 0 to listbox.length do begin if UpperCase(listbox.items[n]) = UpperCase(Finn) then result := n; end; end; Angåande å finne alle filer (inkludert systemfiler), kan du slå opp på FindFirst i Delphi Help; her står det greit korleis du skal gjere det. Som andre parameter til den funksjonen kan du sende noko slikt som "(faAnyFile or faHidden or faSysFile or faReadOnly)", evt. bytte ut "or" med "+" (huskar ikkje heilt korleis det funkar i Delphi). Håpar dette hjelper. Lenke til kommentar
tasle Skrevet 26. november 2003 Del Skrevet 26. november 2003 Alternativet er å bruke TListbox.Items.IndexOf (Finn), sammenliget med eksemplet ovenfor. IndexOf er en innebygd søkefunksjon som returnerer posisjonen til strengen Finn. Posisjonen er nullbasert. Hvis Finn ikke finnes, returneres -1. Lenke til kommentar
kilogram Skrevet 26. november 2003 Del Skrevet 26. november 2003 Nok ein gang viser det seg at eg burde ha lest dokumentasjonen betre. Søkemetoden eg har beskrevet over er kanskje ein meir generell søkemetode ein kan bruke når ein har med lister som manglar IndexOf()-funksjonar. Lenke til kommentar
tasle Skrevet 26. november 2003 Del Skrevet 26. november 2003 Jo, det er så. Alle bør beherske søking vha. løkke slik du har demonstrert. Delphi blir bare mer og mer raffinert og mange trivielle oppgaver er implementert som metoder til de forskjellige objektene. IndexOf er implementert for alt som består av TStrings og TStringlists. Disse gjelder i utvidet forstand for StringGrids også ++ :-) Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå