Eli miten sais tehtyä sellasen ohjelman joka nappia painamalla etsii koneesta tiettyjä ohjelmia? Lazaruksella sellasen haluaisin tehdä.
Tiedoston etsiminen.
1
255
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
Hengenvaaralliset kiihdytysajot päättyivät karmealla tavalla, kilpailija kuoli
Onnettomuudesta on aloitettu selvitys. Tapahtuma keskeytettiin onnettomuuteen. Tapahtumaa tutkitaan paikan päällä yhtei1997024- 1592076
- 1131708
- 511400
Suureksi onneksesi on myönnettävä
Että olen nyt sitten mennyt rakastumaan sinuun. Ei tässä mitään, olen kärsivällinen ❤️551268Möykkähulluus vaati kuolonuhrin
Nuori elämä menettiin täysin turhaan tällä järjettömyydellä! Toivottavasti näitä ei enää koskaan nähdä Kauhavalla! 😢551150Älä mies pidä mua pettäjänä
En petä ketään. Älä mies ajattele niin. Anteeksi että ihastuin suhun varattuna. Pettänyt en ole koskaan ketään vaikka hu1001084Reeniähororeeniä
Helvetillisen vaikeaa työskennellä hoitajana,kun ei kestä silmissään yhtään läskiä. Saati hoitaa sellaista. Mitä tehdä?71026Tarvitsemme lisää maahanmuuttoa.
Väestö eläköityy, eli tarvitsemme lisää tekeviä käsiä ja veronmaksajia. Ainut ratkaisu löytyy maahanmuutosta. Nimenomaan256981- 41959