DirList

Esta função popula uma ListBox com uma lista de arquivos. Você pode especificar o caminho, a mascara e os tipos dos arquivos que você quer listar. Se a sua janela possuir um StaticText, você pode utiliza-lo para exibir o drive e o caminho atual.

Como você já deve ter imaginado, esta função é, na verdade, um método existente nas ListBox. Com este método, você pode simular as funcionalidades do GetFileOpenName e do GetFileSaveName. Se o seu objetivo for simular a janela de seleção de arquivos do Windows, sugiro utilizar estas outras funções.

Sintaxe:

listboxname.DirList ( filespec, filetype {, statictext } )

 

Retorno:

  • true: Se o caminho informado for valido e o ListBox conseguir pegar o resultado (mesmo que o não existam arquivos);
  • false: Se o Listbox não puder ser populado;
  • null: Se qualquer um dos argumentos informados for nulo.

 

Destalhes sobre a função!

Appeon: Funciona sem restrições.

  • O caminho informado não pode ser um arquivo;
  • Também pode ser utilizado em DropDownListBox, PictureListBox e DropDownPictureListBox;
  • Esta função não considera o tipo real dos arquivos, mas suas extensões. (Exemplo: Se você buscar por “c:\temp\*.txt” e renomear o arquivo aplicacao.exe para aplicacao.exe.txt, ele será listado.)

 

Como utilizar:

Exemplo 01: Populando uma ListBox com todos os arquivos .TXT de um diretório.

boolean lb_ret

lb_ret = lb_emp.DirList("C:\Arquivos\*.TXT", 0)

Exemplo 02: Populando uma ListBox com todos os arquivos read-only e com a extensão .DOC de um diretório.

boolean lb_ret

lb_ret = lb_emp.DirList("C:\Arquivos\*.DOC", 1)

Exemplo 03: Populando uma ListBox com todos os arquivos read-only e com a extensão .DOC de um diretório e salvando o caminho atual em uma variável do tipo string.

boolean lb_ret
string ls_path

lb_ret = lb_emp.DirList("C:\Arquivos\*.DOC", 1, ls_path)

Argumentos:

Argumento Obrigatório Tipo Descrição
listboxname Sim ListBox (ou DropDownListBox, PictureListBox ou DropDownPictureListBox) Nome do objeto que receberá a lista de arquivos.
filespec Sim string Caminho e/ou máscara que você vai utilizar para pesquisar sobre os arquivos. Se o caminho não for indicado, será utilizado o caminho atual da aplicação.
filetype Sim uinteger Tipo dos arquivos que serão procurados. os valores podem ser:
  • 0 – Arquivos Leitura/Escrita
  • 1 – Apenas arquivos Read-Only
  • 2 – Arquivos escondidos
  • 4 – Arquivos de sistema
  • 16 – Subdiretórios
  • 32 – Arquivos "archived" modificados
  • 16384 – Drives
  • 32768 – Exclui apenas arquivos com permissão de leitura/escrita

Para mostrar vários tipos de arquivos, some os números de cada tipo (sim, some de somar, adição).
Exemplo: Para listar arquivos Leitura/Escrita, subdiretórios e drives, utliize o valor 16400 (que é 0+16+16384) neste argumento.
statictext Não statictext O objeto do tipo Static Texto que vai exibir o caminho atual.

 

Referência:

 

Dúvidas sobre  o artigo? Sugestões? Precisa de ajuda com outra funcionalidade do PowerBuilder? Deixe um comentário.

The following two tabs change content below.
Arquiteto de Software e Desenvolvedor Backend (quase Fullstack), geralmente trabalho com C#, PowerShell, Python, Golang, bash e Unity (esse é mais por hobby). Estou sempre buscando algo novo para aprender, adicionando novas ferramentas ao meu cinto de utilidades.
Posted in Dev, PowerBuilder and tagged , , , , , , , .