GARANTIR DESCONTO

Fórum Formatação do campo EDIT igual a caixa eletronico de banco #347037

05/10/2007

0

Como disse no título do Tópico.
Claro que os amigos já utlizaram Caixas Eletrônicos de Bancos. E quando voce vai digitar valores ele lhe oferece a opção:


Quero o valor 1.000,00
Voce tem que fazer o seguinte, digitar o numero 1 (um) e teclar 0 (zero) até o campo assumir o valor que eu quero.
Isto é claro podendo ser valores menores ou maiores que o exemplo que fiz.

Alguém tem o código de como fazer isto?
Lembrando que seria para um TEdit
Podem me ajudar?

Agradeço se possível.
Att.


Devmedia

Devmedia

Responder

Posts

05/10/2007

Devmedia

Desculpe. Esqueci de mencionar.
Quando teclar Backspace ele vai apagando o campo retornando o numero à frente para as casas anteriores apagadas.

Exemplo:

1.000,00 -> Teclei backspace uma vez
100,00 -> Teclei backspace mais uma vez
10,00 -> Teclei backspace mais uma vez
1,00 -> Teclei backspace mais uma vez
0,10 -> Teclei backspace mais uma vez
0,01 -> Teclei backspace mais uma vez


Encomodando mais uma vez.
Se é possivel neste código, implementar fração de centavo.

Agradeço novamente quem poder ajudar.
Att.


Responder

Gostei + 0

05/10/2007

Jpauloss

Opa! Tô querendo essa dica tambem!


Responder

Gostei + 0

05/10/2007

Rinez

Taí Lucas
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

function StrToReal(InStr: String): Real;
var
i : Integer;
sreal:string;
Temp : Real;
begin
Result := 0;
i:=length(InStr);
while i>0 do begin
sreal:=copy(InStr,i,1);
if sreal=´.´ then delete(inStr,i,1);
dec(i);
end;
result:= strtofloat(InStr);
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
x:extended;
begin
//Posicionar cursor no final do edit;

if key=#8 then begin
x:=strtoreal(edit1.Text);
x:=x/10;
if x=0.01 then exit;
edit1.text:=formatfloat(´,0.00´,x);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin

end;

end.
Coloque aqui se lhe adudou.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar