Eli miten sais tehtyä sellasen ohjelman joka nappia painamalla etsii koneesta tiettyjä ohjelmia? Lazaruksella sellasen haluaisin tehdä.
Tiedoston etsiminen.
1
211
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
- 952575
Jotain puuttuu
Kun en sinua näe. Et ehkä arvaisi, mutta olen arka kuin alaston koivu lehtiä vailla, talven jäljiltä, kun ajattelen sinu1012223- 841927
Hei A, osaatko
sanoa, miksi olet ihan yhtäkkiä ilmestynyt kaveriehdotuksiini Facebookissa? Mitähän kaikkea Facebook tietää mitä minä en441661- 111645
- 781616
- 341578
Persuilla ja Saksi-Riikalla meni sitten pornon levittämiseksi koko touhu.
Onko kenellekään yllätys?831512Synnittömänä syntyminen
Helluntailaisperäisillä lahkoilla on Raamatunvastainen harhausko että ihminen syntyy synnittömänä.1131398Mitä tämä tarkoittaa,
että näkyy vain viimevuotisia? Kirjoitin muutama tunti sitten viestin, onko se häipynyt avaruuteen?411264