Fórum inputbox somentes dados numéricos é possivel? #331000
11/10/2006
0
Exemplo: 100,58 somente aceitar números e não permitir dados do tipo string.
Abraços.
Fabiotb
Curtir tópico
+ 0Posts
11/10/2006
Marco Salles
Gostei + 0
12/10/2006
Fabiotb
abracos
Gostei + 0
12/10/2006
Mahdak
// Remove caracteres de uma string deixando apenas numeros function RemoveChar(Const Texto:String):String; var I: integer; S: string; begin S := ´´; for I := 1 To Length(Texto) Do begin if (Texto[I] in [´0´..´9´]) then begin S := S + Copy(Texto, I, 1); end; end; result := S; end; procedure TForm1.Button1Click(Sender: TObject); var saida : string; begin saida := inputbox(´validando saida´,´digite o valor:´,´´); Showmessage(removechar(saida)); end;
espero ter ajudado
abraços!
Gostei + 0
13/10/2006
Fabiotb
Nós criamos uma form com nome frm_inputboxps usando uma label, um edit, e um radiogroup e um botao.
(nosso objetivo é tratar o tipo de dados na edit e retorna o mesmo).
Sendo que o radiogroup utilizamos para controlar o tipo de dados (double,string,inteiro). Sendo que no evento:
procedure Tfrm_inputbox.edKeyPress(Sender: TObject; var Key: Char);
begin
case RadioGroup1.ItemIndex of
0 : begin
if not (Key in[´0´..´9´,´,´,Chr(8),chr(13)]) then Key:= #0;
end;
1 : begin
if not (Key in[´a´..´z´,´A´..´Z´,Chr(32),´,´,Chr(8),chr(13)]) then Key:= 0;
end;
2 : begin
if not (Key in[´0´..´9´,Chr(8),chr(13)]) then Key:= 0;
end;
end;
nossa funçao ficou assim:
function inputboxps(mensagem:string;tipodados:integer):string;
begin
try
frm_inputbox:=tfrm_inputbox.create(Application);
frm_inputbox.RadioGroup1.ItemIndex:=tipodados;
frm_inputbox.lblmensagem.Caption:=mensagem;
frm_inputbox.showmodal;
result:=frm_inputbox.ed.Text;
finally
frm_inputbox.free;
end;
end;
Para usar a funcao basta criar uma variavel do tipo string veja abaixo:
Var_valor:=inputboxps(´Valor da Mensalidade:´,0);
Qualquer dúvida tamos ai.
Obrigado por todos que tentaram de alguma forma em me ajudar .
Fabio Correa
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)