Fórum Ordenar o Conteúdo de um TEdit #173165
05/08/2003
0
Olá pessoal, td bem ?
Estou precisando ordenar o conteúdo de um TEdit, mas não estou encontrando uma solução.
Tenho um conteúdo dese tipo,
3.678 1.456 2.456
Tenho que colocar esses números em ordem tipo
1.456 2.456 3.678
Os números são separados por espaço em branco. E necessitam dos pontos.
Desde já agradeço a quem puder me ajudar.
Estou precisando ordenar o conteúdo de um TEdit, mas não estou encontrando uma solução.
Tenho um conteúdo dese tipo,
3.678 1.456 2.456
Tenho que colocar esses números em ordem tipo
1.456 2.456 3.678
Os números são separados por espaço em branco. E necessitam dos pontos.
Desde já agradeço a quem puder me ajudar.
Adelcino
Curtir tópico
+ 0
Responder
Posts
05/08/2003
Djjunior
Cara, tipo eu creio que o mais fácil seria se vc colocasse um ListBox com a propriedade sorted = true transferisse os seus valores para ela, e mostrasse os valores para o usuário nela mesmo. Colocando no evento onkeydown o seguinte
if key = vk_Return then
// transfere para a listbox
Caso vc realmente tenha que colocar o resultado em um tedit vc pode usar o código abaixo para poder separar os valores (claro fazendo suas respectivas alterações.
Var cods: Array[1..5] of string;
i, i2, i3,i4: integer;
begin
If Codpar.Text <> ´´ then begin
i2 := 1;
i3 := 0;
i4 := 1;
for i := 1 to 5 do
cods[i] := ´´;
If Length(CodPar.Text) > 1 then begin
for i := 1 to Length(CodPar.Text) do begin
If Copy(codPar.Text,i,1) = ´;´ then begin
cods[i4] :=Copy(CodPar.Text,i2,i3);
i3 := 0;
inc(i4);
I2 := i+1;
end else begin
inc(i3);
end;
end;
cods[i4] :=Copy(CodPar.Text,i2,i3);
end else
cods[1] := CodPar.Text;
espero ter ajudado!
djr
if key = vk_Return then
// transfere para a listbox
Caso vc realmente tenha que colocar o resultado em um tedit vc pode usar o código abaixo para poder separar os valores (claro fazendo suas respectivas alterações.
Var cods: Array[1..5] of string;
i, i2, i3,i4: integer;
begin
If Codpar.Text <> ´´ then begin
i2 := 1;
i3 := 0;
i4 := 1;
for i := 1 to 5 do
cods[i] := ´´;
If Length(CodPar.Text) > 1 then begin
for i := 1 to Length(CodPar.Text) do begin
If Copy(codPar.Text,i,1) = ´;´ then begin
cods[i4] :=Copy(CodPar.Text,i2,i3);
i3 := 0;
inc(i4);
I2 := i+1;
end else begin
inc(i3);
end;
end;
cods[i4] :=Copy(CodPar.Text,i2,i3);
end else
cods[1] := CodPar.Text;
espero ter ajudado!
djr
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)