unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  liczba: Integer;
begin
   liczba := StrToIntDef(Edit2.Text, 0);  //jeśli wpisano np. literę, to w okienku Edit1
                                    // wyświetli się zero, umożliwia to uniknięcie błędu
   Edit2.Text := IntToStr(liczba);

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  case Key of
  #8,'0'..'9': ;      //dopuszczalne znaki to Backspace(#8)i cyfry
  ',': if Pos(',',Edit1.Text)>0 then Key:=#0;//funkcja Pos zwraca 0, gdy w okienku Edit1
                                             //nie ma przecinka
  else
   Key:=#0;           //wprowadzanie innych znaków jest blokowane
  end;
end;

end.
