Eli miten sais tehtyä sellasen ohjelman joka nappia painamalla etsii koneesta tiettyjä ohjelmia? Lazaruksella sellasen haluaisin tehdä.
Tiedoston etsiminen.
1
243
Vastaukset
- Riittäneekö tämä?
Mielestäni sillä ei ole paljonkaan eroa onko kehitysympäristö Lazarus vai Delphi (kieli on kuitenkin Pascal).
Tässä nyt jonkinlainen ratkaisuyritys.
Eli tee uusi projekti. Laita lomakkelle kaksi Edit- "tekstin syöttölaatikkoa", ListBox ja painonappi Button.
Luo Buttonille tapahtumankäsittelijä. Täydennä lähdekoodia seuraavasti:
procedure TForm1.Button1Click(Sender: TObject);
var etsittava_nimi, tiedostopolku:string;
begin
ListBox1.Clear;
etsittava_nimi := Edit1.Text;
tiedostopolku:= Edit2.Text;
TiedostonHaku(tiedostopolku, etsittava_nimi);
end;
procedure TForm1.TiedostonHaku(const tiedostoPolunNimi, tiedostonNimi : string);
var searchResult : TSearchRec;
polku : string;
begin
polku := IncludeTrailingBackslash(tiedostoPolunNimi);
if FindFirst(polku tiedostonNimi, faAnyFile - faDirectory, searchResult) = 0 then
try
repeat
ListBox1.Items.Add(polku searchResult.Name);
until FindNext(searchResult) 0;
finally
FindClose(searchResult);
end;
if FindFirst(polku '*.*', faDirectory, searchResult) = 0 then
try
repeat
if ((searchResult.Attr and faDirectory) 0) and (searchResult.Name'.') and (searchResult.Name'..') then
TiedostonHaku(polku searchResult.Name, tiedostonNimi);
until FindNext(searchResult) 0;
finally
FindClose(searchResult);
end;
end;
Huomaa että procedure TiedostonHaku on esiteltävä luokan TForm1 esittelyn yhteydessä. Sen voi kirjoittaa sinne käsin tai sitten
menet tuolle riville jossa on procedure TForm1.TiedostonH... jossa painat hiiren oikeata nappia, valitset ponnahdusvalikosta kohdan koodin uudelleen muokkaus ja sieltä täydennä koodia jolloin tuo luokan esittely täydentyy automaattisesti.
Oppimisen kannalta olisi ehkäpä parempi yrittää kääntää koodia ennen tuota luokan täydentämistä ja katsoa minkä virheilmoituksen saat. Vasta tämän tälkeen mennä täydentämään koodia oikeanlaiseksi. Lisäksi kannattaa katsoa miten se koodi täydentyi.
Katso myös keskustelua:
http://keskustelu.suomi24.fi/show.fcgi?category=108&conference=4500000000000646&posting=22000000032783387
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1486247
- 461685
Klaukkalan onnettomuus 4.4
Klaukkalassa oli tänään se kolmen nuoren naisen onnettomuus, onko kellään mitään tietoa mitä kävi tai ketä onnettomuudes371311- 45998
Ukraina ja Zelenskyn ylläpitämä sota tuhoaa Euroopan, ei Venäjä
Mutta tätä ei YLE eikä Helsingin Sanomat kerto.320981Kolari Klaukkala
Kaksi teinityttö kuoli. Vastaantulijoille ei käynyt mitenkään. Mikä auto ja malli telineillä oli entä se toinen auto? Se45893Ooo! Kaija Koo saa kesämökille öky-rempan:jättimäinen terde, poreallas... Katso ennen-jälkeen kuvat!
Wow, nyt on Kaija Koon mökkipihalla kyllä iso muutos! Miltä näyttää, haluaisitko omalle mökillesi vaikkapa samanlaisen l13889Kevyt on olo
Tiedättekö, että olo kevenee kummasti, kun päästää turhista asioista tai ihmisistä irti! Tämä on hyvä näin <384856Olisinpa jo siellä, otatkohan minut vastaan
Olisitpa lähelläni ja antaisit minun maalata sinulle kuvaa siitä kaikesta ikävästä, tuskasta, epävarmuudesta ja mieleni75845Toivoisin, että lähentyisit kanssani
Tänään koin, että välillämme oli enemmän. Kummatkin katsoivat pidempään kuin tavallisesti toista silmiin. En tiedä mistä14837