domingo, 24 de maio de 2009

Caixa mista

Function CaixaMista (mNome: string): string;
var
tam,pos1,pos2 : integer ;
pal : string;
begin
tam := Length(mNome);
mNome := TrimRight(mNome) + ' ';
while True do
begin
pos1:=POS( ' ' , mNome) ;
if pos1 = 0 then break;
pal := Copy(mNome,1,pos1) ;
pos2 := pos(pal, 'DA - DAS -DE -DO -DOS ');
If pos2 > 0 then pal :=AnsiLowerCase (pal)
else pal:=Copy(pal,1,1) + AnsiLowerCase(Copy(pal,2,tam)) ;
result := result + pal ;
mNome := copy(mNome,pos1+1,tam)
end;
end; //Exemplo:

//Coloque este comando no evento de saída de foco de um edit
Edit1.Text :=CaixaMista(Edit1.Text) ;

//Se digitar assim:

//PLANETA DELPHI

//Ficará assim:

//Planeta Delphi

Nenhum comentário:

Postar um comentário