Etsi toiminto

Apuja?

Eli sain nyt lazaruksella toimimaan ohjelman joka ettii yhen tietyn tiedoston koneelta.... Miten saisin ohjelman toimimaan niin että kirjottaisit yhteen kohtaan hakusanan ja painat etsi niin sitte toiseen laatikkoon tulisi se mitä se löysi?

Tämän hetkinen koodi on tässä:

procedure TForm1.Button1Click(Sender: TObject);
var
myFile : TextFile;
fileName : string;
fullFilePath : string;
dir1, dir2 : string;
begin
fileName := '';
AssignFile(myFile, 'C:\Program Files\' fileName);
ReWrite(myFile);
Write(myFile, 'Hello World');
CloseFile(myFile);
dir1 := 'C:\No such directory';
dir2 := 'C:\Program Files\';
fullFilePath := FileSearch(fileName, dir1 ';' dir2);
if fullFilePath = '' then
ShowMessage(fileName ' not found')
else ShowMessage(fullFilePath ' found OK');
DeleteFile(fileName);
fullFilePath := FileSearch(fileName, dir1 ';' dir2);
end;

6

366

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • ListBoxiin

      Lomakkeella on kolme komponenttia
      - Button1
      - Edit1
      - ListBox1


      Edit1 on tieto millaisia tiedostoja haetaan.
      Jos on *.* niin haetaan ohjelmanoletuskansiosta.
      Mukaan voidaan laittaa myös hakupolku.

      Tulostetaan kaikki hakuehdon mukaiset tiedostot ListBox1:n


      procedure TForm1.Button1Click(Sender: TObject);
      var searchResult : TSearchRec;
      etsittava_nimi:string;
      begin
      etsittava_nimi := Edit1.text;
      if FindFirst(etsittava_nimi, faAnyFile, searchResult) = 0 then
      begin
      repeat
      ListBox1.Items.Add(searchResult.Name);
      until FindNext(searchResult) 0;
      FindClose(searchResult);
      end;
      end;



      PS. Huomaa että halutessasi voit jatkojalostaa tätä esim. Simon ohjeilla (katso aiempia Delphi-alueen viestejä)!

      • on...

        ku ei toimi? Kirjoitan nimen edit1 ja painan hae niin mitään ei tapahdu?

        Koodi:

        procedure TForm1.Button1Click(Sender: TObject);
        var searchResult : TSearchRec;
        etsittava_nimi:string;
        begin
        etsittava_nimi := Edit1.text;
        if FindFirst(etsittava_nimi, faAnyFile, searchResult) = 0 then
        begin
        repeat
        ListBox1.Items.Add(searchResult.Name);
        until FindNext(searchResult) 0;
        FindClose(searchResult);
        end;
        end;

        procedure TForm1.Button2Click(Sender: TObject);
        begin
        Close;
        end;


      • List-----------
        on... kirjoitti:

        ku ei toimi? Kirjoitan nimen edit1 ja painan hae niin mitään ei tapahdu?

        Koodi:

        procedure TForm1.Button1Click(Sender: TObject);
        var searchResult : TSearchRec;
        etsittava_nimi:string;
        begin
        etsittava_nimi := Edit1.text;
        if FindFirst(etsittava_nimi, faAnyFile, searchResult) = 0 then
        begin
        repeat
        ListBox1.Items.Add(searchResult.Name);
        until FindNext(searchResult) 0;
        FindClose(searchResult);
        end;
        end;

        procedure TForm1.Button2Click(Sender: TObject);
        begin
        Close;
        end;

        Kokeilitko kirjoittaa tuohon tekstikenttään (edit)
        esim. *.* jolloin pitäisi löytyä kansion kaikki tiedostot?


        PS Laita myös luokan esittely meille näkyviin jos tuokaan ei ole syynä.


      • Nollaus

        ListBoxin ehkäpä voisi tyhjentää ensimmäisenä toimintona painonapin painamistoiminnassa (tuskin tarkoituksena on kerätä isoa listaa.
        Ero tulee esille jos nappia painaa kaksi kertaa)

        eli

        ...
        begin
        ListBox1.Items.Clear;
        etsittava_nimi := Edit1.text;
        ...


      • Apuja?
        Nollaus kirjoitti:

        ListBoxin ehkäpä voisi tyhjentää ensimmäisenä toimintona painonapin painamistoiminnassa (tuskin tarkoituksena on kerätä isoa listaa.
        Ero tulee esille jos nappia painaa kaksi kertaa)

        eli

        ...
        begin
        ListBox1.Items.Clear;
        etsittava_nimi := Edit1.text;
        ...

        kyllä toi *.* löysi tiedostoja, mutta saisko ton toimimaan sillein et kirjotat vaikkapa ''Windows mediplayer'' Ja sitte se näyttäis missä se on?


      • -___-
        Apuja? kirjoitti:

        kyllä toi *.* löysi tiedostoja, mutta saisko ton toimimaan sillein et kirjotat vaikkapa ''Windows mediplayer'' Ja sitte se näyttäis missä se on?

        Tarkoitatko samanlaista ominaisuutta kuin
        Lazaruksen "Etsi tiedostoista" / find in files on ?

        Siinähän on haluttaessa mukana myös säännölliset lausekkeet (Regular expression)


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nasima löi Jussille luun kurkkuun

      Nasima kertoi ettei Jussi sovi puhemieheksi, koska sallii rasismin. Mihin toimiin perussuomalaiset ryhtyvät? Kuka nouse
      Maailman menoa
      512
      8739
    2. Razmyar on säälittävä - puhemiehellä ei ole mitään syytä ottaa kantaa tähän "silmäkohuun"

      jonka toimittajat sai aikaan. Asia ei kuulu puhemiehelle millään lailla. Razmyar haluaa taas vaan huomiota. Mutta jos r
      Maailman menoa
      139
      6027
    3. Miten Eerolan silmäkuvat voivat levitä muutamassa tunnissa ympäri maailmaa?

      Seuraako koko maailma persujen ja erityisesti Eerolan somea reaaliajassa? Edes kansanedustajan itsemurha eduskuntatalos
      Maailman menoa
      351
      5077
    4. Siviilipalvelusmies Halla-aho normalisoi rasismin perussuomalaisissa

      SMP:n tuhkille perustettu puolue ei ollut ihmisiä vastaan, vaan instituutiokriittinen. "Missä EU - siellä ongelma", oli
      Perussuomalaiset
      63
      4706
    5. Suomalaisilta vaaditaan valtavasti suvaitsevaisuutta - miksi sitä ei vaadita muslimeilta

      Suomalaisilta vaaditaan kaikkea, pitää olla suvaitsevainen ja hyväksyä vieraiden tavat, rasisti ei saa olla jne. Miksi s
      Maailman menoa
      91
      4290
    6. Juuri Suomen valtamedian toimittajat teki "silmävääntelystä" sen kohun

      ja ilmeisesti ottivat yhteyttä myös ulkomaisiin medioihin, että katsokaas tätä. Mutta Japanin medioissa on asiaan suhta
      Maailman menoa
      166
      4013
    7. SDP:n kansanedustaja Marko Asell: Suomen myönnettävä maahanmuuton ongelmat

      Hänen mielestään Suomen pitää pyrkiä rajoittamaan jyrkästi turvapaikanhakijoiden pääsyä maahan ja hän arvioi, että maaha
      Maailman menoa
      181
      3873
    8. Sinun ja kaivatun nimikirjaimet

      Mitkä ne on ? Meillä H❤️M 👩‍❤️‍👩
      Ikävä
      91
      1808
    9. Onko sinulla ja kaivatulla

      joku yhteinen tärkeä paikka?
      Ikävä
      103
      1364
    10. sä oot ehkä

      maailman omituisin tyyppi
      Ikävä
      47
      939
    Aihe