Ĺadny brzuch
Witam.
Z góry zaznaczam, że jestem bardzo początkujący w temacie Delphi.
Zacząłem pisać swój pierwszy programik i utknąłem.
Najpierw, krótko o tym co chcę osiągnąć;
Mam komponent FileListBox1 oraz FileListBox2. W pierwszym, przy uruchomieniu programu mają zostać wczytane podkatalogi z ustalonego wcześniej w programie katalogu.
To mam.
Teraz czego mi trzeba;
Po kliknięciu na któryś z katalogów, w FileListBox2 mają wyświetlić się pliki tam zawarte (wszystkie w txt). Dodatkowo, po kliknięciu na dany plik txt ma otworzyć się osobne okno (Memo) z wyświetlonym plikiem.
Dla kogoś doświadczonego, to kilka linijek kodu.
Szukałem w necie jakiś przykładów, które wykorzystują podobny mechanizm, ale nie znalazłem.
Z góry dzięki za pomoc.
http://forum.ks-eksp. ..ndpost&p=282840
http://forum.ks-eksp...ndpost&p=282840
jak uruchomić (zobaczyć) wybrany plik txt z listbox2 w osobnym okienku?
To o czym mówiłem, realizuje ten kod:
procedure TForm1.FormCreate(Sender: TObject); var sr:tsearchrec; f:integer; kat:string; begin kat:=extractfilepath(paramstr(0)); f:=findfirst(kat+'*.*',faanyfile,sr); while f=0 do begin if sr.Attr and fadirectory>0 then if (sr.Name<>'.')and(sr.Name<>'..') then listbox1.Items.Add(sr.Name); f:=findnext(sr); end; end; procedure TForm1.ListBox1Click(Sender: TObject); var sr:tsearchrec; f:integer; roz, kat:string; begin listbox2.Clear;roz:='txt'; with listbox1 do for f:=0 to Count-1 do if Selected[f] then kat:=extractfilepath(paramstr(0))+Items[f]+'.\'; f:=findfirst(kat+'*.'+roz,faanyfile,sr); while f=0 do begin listbox2.Items.Add(sr.Name); f:=findnext(sr); end; end;
Nie jestem jego autorem, więc nie powiem czemu tak a nie inaczej.
Fakt faktem, że działa i robi co chciałem, ale nijak nie pasuje mi tu podana linijka kodu (zmieniłem oczywiście FileListBox na ListBox).
Z całą pewnością zadaję "trudne inaczej <_< " pytania, ale tak to już jest na początku ;)
Jakbyś zobaczył kod mojego notatnika.... :) Hehe, sam się nim przerażam :)
Nie jestem jego autorem, więc nie powiem czemu tak a nie inaczej.
Fakt faktem, że działa i robi co chciałem, ale nijak nie pasuje mi tu podana linijka kodu (zmieniłem oczywiście FileListBox na ListBox).
Z całą pewnością zadaję "trudne inaczej <_< " pytania, ale tak to już jest na początku ;)
:excl: Coś nie tak z DIR
Taki komunikat:
Build
[Error] przyklad.pas(77): Undeclared identifier: 'dir'
[Fatal Error] Project1.dpr(6): Could not compile used unit 'przyklad.pas'
Gdybyś mógł dokładnie napisać, co mam wpisać.
Sam sobie nie poradzę :huh:
Zrbiłem mały przykład tego o co mi dokładnie chodzi:
[url="http://etiuda.net/przyklad.jpg"]http://etiuda.net/przyklad.jpg[/url]
W okienku po lewej stronie katalogi, po prawej jest wyświetlana zawartość klikniętego katalogu.
Tyle na razie działa. Teraz trzeba zrobić tak, żeby po kliknięciu na np.: Przyklad1.txt otwierało się osobne okienko z wyświetlonym tekstem.
Myślę że to jest całkiem proste do zrobienie (jak ktoś się zna :huh: )
:excl: Coś nie tak z DIR
Taki komunikat:
Gdybyś mógł dokładnie napisać, co mam wpisać.
Sam sobie nie poradzę :huh:
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Z góry zaznaczam, że jestem bardzo początkujący w temacie Delphi.
Zacząłem pisać swój pierwszy programik i utknąłem.
Najpierw, krótko o tym co chcę osiągnąć;
Mam komponent FileListBox1 oraz FileListBox2. W pierwszym, przy uruchomieniu programu mają zostać wczytane podkatalogi z ustalonego wcześniej w programie katalogu.
To mam.
Teraz czego mi trzeba;
Po kliknięciu na któryś z katalogów, w FileListBox2 mają wyświetlić się pliki tam zawarte (wszystkie w txt). Dodatkowo, po kliknięciu na dany plik txt ma otworzyć się osobne okno (Memo) z wyświetlonym plikiem.
Dla kogoś doświadczonego, to kilka linijek kodu.
Szukałem w necie jakiś przykładów, które wykorzystują podobny mechanizm, ale nie znalazłem.
Z góry dzięki za pomoc.
http://forum.ks-eksp. ..ndpost&p=282840
http://forum.ks-eksp...ndpost&p=282840

jak uruchomić (zobaczyć) wybrany plik txt z listbox2 w osobnym okienku?

To o czym mówiłem, realizuje ten kod:
procedure TForm1.FormCreate(Sender: TObject); var sr:tsearchrec; f:integer; kat:string; begin kat:=extractfilepath(paramstr(0)); f:=findfirst(kat+'*.*',faanyfile,sr); while f=0 do begin if sr.Attr and fadirectory>0 then if (sr.Name<>'.')and(sr.Name<>'..') then listbox1.Items.Add(sr.Name); f:=findnext(sr); end; end; procedure TForm1.ListBox1Click(Sender: TObject); var sr:tsearchrec; f:integer; roz, kat:string; begin listbox2.Clear;roz:='txt'; with listbox1 do for f:=0 to Count-1 do if Selected[f] then kat:=extractfilepath(paramstr(0))+Items[f]+'.\'; f:=findfirst(kat+'*.'+roz,faanyfile,sr); while f=0 do begin listbox2.Items.Add(sr.Name); f:=findnext(sr); end; end;
Nie jestem jego autorem, więc nie powiem czemu tak a nie inaczej.
Fakt faktem, że działa i robi co chciałem, ale nijak nie pasuje mi tu podana linijka kodu (zmieniłem oczywiście FileListBox na ListBox).
Z całą pewnością zadaję "trudne inaczej <_< " pytania, ale tak to już jest na początku ;)
Jakbyś zobaczył kod mojego notatnika.... :) Hehe, sam się nim przerażam :)
Nie jestem jego autorem, więc nie powiem czemu tak a nie inaczej.
Fakt faktem, że działa i robi co chciałem, ale nijak nie pasuje mi tu podana linijka kodu (zmieniłem oczywiście FileListBox na ListBox).
Z całą pewnością zadaję "trudne inaczej <_< " pytania, ale tak to już jest na początku ;)

:excl: Coś nie tak z DIR
Taki komunikat:
Build
[Error] przyklad.pas(77): Undeclared identifier: 'dir'
[Fatal Error] Project1.dpr(6): Could not compile used unit 'przyklad.pas'
Gdybyś mógł dokładnie napisać, co mam wpisać.
Sam sobie nie poradzę :huh:
Zrbiłem mały przykład tego o co mi dokładnie chodzi:
[url="http://etiuda.net/przyklad.jpg"]http://etiuda.net/przyklad.jpg[/url]
W okienku po lewej stronie katalogi, po prawej jest wyświetlana zawartość klikniętego katalogu.
Tyle na razie działa. Teraz trzeba zrobić tak, żeby po kliknięciu na np.: Przyklad1.txt otwierało się osobne okienko z wyświetlonym tekstem.
Myślę że to jest całkiem proste do zrobienie (jak ktoś się zna :huh: )
:excl: Coś nie tak z DIR
Taki komunikat:
Gdybyś mógł dokładnie napisać, co mam wpisać.
Sam sobie nie poradzę :huh:
