Fazer variarel receber o nome do arquivo de um FileListBox

Delphi

28/02/2005

Criei uma variável pra q receba os nomes de arquivos q estão FileListBox1, mas não dá certo dá um erro: List index out of bounds (-1) e está da seguinte forma:

WVariavel : string;

for indice:=-1 to FileListBox1.items.count do
begin
WVariavel:=FileListBox1.Items[FileListBox1.ItemIndex]; // aqui o erro

end;

já tentei colocar assim tb, não dá erro mas fica em branco e contem arquivos no FileListBox
WVariavel:=FileListBox1.FileName;

como devo fazer para q a variável receba o nome q está passando no loop?


Janete

Janete

Curtidas 0

Respostas

Oscar Candido

Oscar Candido

28/02/2005

Amigo, creio que esse erro, ´ List index out of bounds (-1)´, está ocorrendo pq nenhum item em sua FileListBox está selecionado, ou seja, o FileListBox1.ItemIndex = -1

Espero ter ajudado
Um Abraço


GOSTEI 0
Massuda

Massuda

28/02/2005

Se você está tentando copiar a lista de arquivos em TFileListBox.Items, seu código devia ser algo assim
var
  I: Integer;
  S: string;
....
  S := ´´;
  for I := 0 to FileListBox1.Items.Count - 1 do begin
    S := S + FileListBox1.Items[I] + ´;´; // uma lista separada por ´;´
  end;

A propriedade TFileListBox.FileName retorna o nome do arquivo selecionado no list box (virá branco se não houver arquivo selecionado).

A propriedade TFileListBox.ItemIndex retorna o índice do arquivo selecionado no list box (virá -1 se não houver arquivo selecionado).

Se você precisa obter uma lista dos arquivos existentes em um determinado diretório programaticamente, considere utilizar as funções FindFirst, FindNext e FindClose da unit SysUtils.


GOSTEI 0
POSTAR