Selecionar vários arquivos com o OpenDialog?
Para seleção múltiplos arquivos utilizando o "TOpenDialog" temos que marcar a propriedade "ofAllowMultiSelect"
Se deseja localizar apenas uma extensão tem que ser informado em "Filter", no exemplo colocado a extensão ".Txt"
Vamos fazer um exemplo simples, um programinha que seleciona vários txt dentro de um diretório:
procedure
procedure TFLocate.btnLocalizarClick(Sender: TObject);
var
wS, wArquivo, wPalavraLocalizar: string;
wCount, wP, wk: Integer;
wArquivoLocalizar: TextFile;
begin
wCount := 0;
mmLocalizar.Lines.Clear;
wPalavraLocalizar := LowerCase(edLocate.Text);
if OpDlgAnexos.Execute then begin
for wk := 0 to OpDlgAnexos.Files.Count - 1 do begin
wArquivo := OpDlgAnexos.Files[wk];
AssignFile(wArquivoLocalizar, wArquivo);
Reset(wArquivoLocalizar);
try
while not Eof(wArquivoLocalizar) do begin
Readln(wArquivoLocalizar, wS);
wS := LowerCase(wS);
while Trim(wS) <> EmptyStr do begin
wP := Pos(wPalavraLocalizar, wS);
if wP = 0 then
Break;
Inc(wCount);
mmLocalizar.Lines.Add(wArquivo);
Delete(wS, 1, wP + Length(wPalavraLocalizar));
end;
end;
finally
CloseFile(wArquivoLocalizar);
end;
end;
if wCount > 0 then
ShowMessage('Quantidade de palavras encontradas: ' + IntToStr(wCount))
else
ShowMessage('Nenhuma palavra encontrada');
end;
end;
Exemplo: Download do exemplo
Entendi!Muito obrigado!"
ResponderExcluir