Olá
Um amigo pediu que eu mudasse a função e dessa mais opções do que trazer
então fiz esta, como ela funcionou bem decidi tambem compartilhar, caso desejem ok!
espero ter ajudado, ate mais..!
{ caso deseje você pode mudar o "tipo" string para integer e colocar um "case" na função}
Function NomeCurto2(Texto, Tipo: string):string; var
i, barra, zero: integer;
arquivo : string; begin for i:= length(Texto) downto 0 do begin if copy(Texto,i,1) = '' then begin
barra := i;
break end; end;
if tipo = 'Arquivo Sem Extenção' then
Result := Copy(Texto,barra+1,(pos('.',Texto)-barra)-1) else if tipo = 'Arquivo Com Extenção' then
Result := Copy(Texto,barra+1,length(texto)) else if tipo = 'Diretório' then
Result := Copy(Texto,0,barra) else if tipo = 'Unidade' then
Result := copy(Texto,1,1) else if tipo = '' then
Result := Texto; end;
{ No formulário coloque cinco edit's, um botão e OpenDialog}
// no botão coloque esse código if OpenDialog1.Execute then begin
edit1.Text := nomecurto2(opendialog1.FileName,'Unidade');
edit2.Text := nomecurto2(opendialog1.FileName,'Diretório');
edit3.Text := nomecurto2(opendialog1.FileName,'Arquivo Sem Extenção');
edit4.Text := nomecurto2(opendialog1.FileName,'Arquivo Com Extenção');
edit5.Text := nomecurto2(opendialog1.FileName,''); end;