Fórum Funçao para nao incluir mais de duas letras repetidas? #300528
24/10/2005
0
Tem alguma funçao que reconheça quando digito mais de dis caracteres nas palavras no edit?
Ex:
Tipo se eu digitar PASSSARO, me de uma mensagem de erro.
O que eu quero nao eh um tipo de dicionario que corriga a palavra e sim uma funçao que nao me deixe repetir mais de duas vezes a mesma letra em uma palavra.
Obrigado mais uma vez
Adriano_servitec
Curtir tópico
+ 0Posts
24/10/2005
Marlon Spiess
var
ind : integer;
qtd : integer;
txt : string;
begin
txt := Edit1.Text;
qtd := 0;
for ind := length(txt) downto length(txt)-2 do
begin
if ind > 0 then
if txt[ind] = key then
inc(qtd);
end;
if qtd > 1 then
key := chr(0);
end;
Espero ter ajudado
Gostei + 0
24/10/2005
Marco Salles
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if pos(char(key),Edit1.text) > 0 Then key:=#0; end;
Gostei + 0
25/10/2005
Adriano_servitec
A 1ª do colega Marlon Henrique Spiess, funciona direitinho do jeito que eu queria.
A 2ª do colega Marco Salles, funciona mais nao exatamente como eu queria, por exemplo se eu ter que digitar ADRIANO no edit vai me aparecer assim: ADRINO, aqui neste caso nao deixa repetir a mesma letra no edit.
Obrigado amigos pelas dicas.
Abraço a todos
T+
Adriano
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)