Fórum Listbox e arquivo TXT #357352
18/04/2008
0
[size=9:a52de57881]ps. desculpe os erros de portugues uadsuhsu[/size:a52de57881]
Bertu
Curtir tópico
+ 0Posts
18/04/2008
Paulo
Gostei + 0
18/04/2008
Bertu
Procedure que Lista:
Procedure TForm1.ListarPasta(Pasta: string; Strings: TStrings); var Rec : TSearchRec; PosEq: Integer; begin Strings.Clear; //Pasta := IncludeTrailingBackSlash(Pasta); // Note que aqui vc tb pode esccolher a extensão dos arquivos: if SysUtils.FindFirst(Pasta + ´*.txt´, faAnyFile, Rec) = 0 then try repeat if (Rec.Name <> ´.´) and (Rec.Name<>´..´)then begin PosEq:=Pos(´.´,Rec.Name); Strings.Add(Copy(Rec.Name,1,PosEq-1)); end; until SysUtils.FindNext(Rec) <> 0; finally SysUtils.FindClose(Rec); end; end;
Botao
procedure TForm1.Button1Click(Sender: TObject); begin ListarPasta(´C:\a\´, ListBox1.Items); end;
Duplo Click ListBox
procedure TForm1.ListBox1DblClick(Sender: TObject); begin Memo1.Text := ListBox1.Items.Strings[Listbox1.ItemIndex]; end;
eu tentei fazer algo do tipo
procedure TForm1.ListBox1DblClick(Sender: TObject); var f:TextFile; linha:String; begin AssignFile(f,´C:\a\´+ListBox1.Items.Strings[Listbox1.ItemIndex]); Reset(f); While not eof(f) do begin Readln(f,linha); Memo1.Text := linha; end; end;
se eu consiguir pegar o diretorio eu consigo fazer funcionar :p
Gostei + 0
18/04/2008
Paulo
Gostei + 0
18/04/2008
Bertu
Gostei + 0
18/04/2008
Paulo
Gostei + 0
18/04/2008
Bertu
procedure TForm1.ListBox1DblClick(Sender: TObject); var x:TextFile; linha:String; caminho: string; begin DirectoryListBox1.Directory := Edit1.Text; caminho := DirectoryListBox1.Directory+´\´+ListBox1.Items.Strings[Listbox1.ItemIndex]+´.txt´; AssignFile(x,caminho); Reset(x); While not eof(x) do begin Readln(x,linha); Memo1.Text := Decrypt(linha); end;
Gostei + 0
18/04/2008
Marco Salles
uma outra forma muito interessante é usat o TFileListBox
Adicione um TFileListBox ao Form
Altere as propriedades
Mask para .txt
ShowGriphs para Tue
finalmente escreva os métodos :
procedure TForm1.FormCreate(Sender: TObject); begin FileListBox1.Directory:=´C:\´; //******Coloque aqui o seu Diretório end; procedure TForm1.FileListBox1Click(Sender: TObject); begin //é so issso .. e ze finin memo1.Lines.LoadFromFile(FileListBox1.FileName); end;
Gostei + 0
19/04/2008
Fabiano Góes
procedure TForm1.ListBox1DblClick(Sender: TObject); var x:TextFile; linha:String; caminho: string; begin DirectoryListBox1.Directory := Edit1.Text; caminho := DirectoryListBox1.Directory+´\´+ListBox1.Items.Strings[Listbox1.ItemIndex]+´.txt´; AssignFile(x,caminho); Reset(x); While not eof(x) do begin Readln(x,linha); Memo1.Text := Decrypt(linha); end;
olha amigo, a dica do Marcos Salles é muito boa, bem pratica e com um código bastante limpo.
mais acho que com uma linha você faz o que precisa,
pelo que entendi o diretório está dentro do ´Edit1.Text´,
sendo assim:
procedure TForm1.ListBox1DblClick(Sender: TObject); begin Memo1.Lines.LoadFromFile(Edit1.Text+´\´+ListBox1.Items.Strings[Listbox1.ItemIndex]+´.txt´); end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)