⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.~pas

📁 用delphi编写的计算器非常简单实现基本功能
💻 ~PAS
字号:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Button15: TButton;
    Button16: TButton;
    Button17: TButton;
    ActionList1: TActionList;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button10Click(Sender: TObject);
    procedure Button12Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button11Click(Sender: TObject);
    procedure Button13Click(Sender: TObject);
    procedure Button14Click(Sender: TObject);
    procedure Button15Click(Sender: TObject);
    procedure Button16Click(Sender: TObject);
    procedure Button17Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
   flog,flag1,flag2,flag3,flag4,flag5:integer;
   sum,a,b:double;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin
   if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'1';

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
 edit1.Text:=edit1.text+'2';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'3';
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'4';
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'5';
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'6';
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'7';
end;

procedure TForm1.Button8Click(Sender: TObject);
begin

if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;edit1.Text:=edit1.text+'8';
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'9';
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
edit1.Text:=edit1.text+'0';
end;

procedure TForm1.Button12Click(Sender: TObject);
begin
 if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
if flog=0 then
begin
edit1.Text:=edit1.text+'.';
flog:=1;
end;
  end;
procedure TForm1.FormCreate(Sender: TObject);
begin
flog:=0;
flag1:=0;
flag2:=0;
flag3:=0;
end;

procedure TForm1.Button11Click(Sender: TObject);
  var str:string;
begin
if flag3=1 then
   begin
   flag3:=0 ;
   edit1.Text:='';
   end;
if flag1=0 then
begin
flag1:=1;
edit1.Text:='-'+edit1.Text;
end
else
if flag1=1 then
begin
str:=edit1.Text;

delete(str,1,1);
edit1.Text:=str;
flag1:=0;
end;
end;

procedure TForm1.Button13Click(Sender: TObject);
begin
if flag2=0  then
begin
  if edit1.text='' then
  messagedlg( '请输入数据',mterror,[mbok],0)
  else
  begin
a:=strtofloat(edit1.Text);
flag2:=1;
edit1.Text:='';
end;
end;
end;

procedure TForm1.Button14Click(Sender: TObject);
begin
 if flag2=0  then
begin
  if edit1.text='' then
  messagedlg( '请输入数据',mterror,[mbok],0)
  else
  begin
a:=strtofloat(edit1.Text);
flag2:=2;
 edit1.Text:='';
end;
end;
end;

procedure TForm1.Button15Click(Sender: TObject);
begin
  if flag2=0  then
begin
  if edit1.text='' then
  messagedlg( '请输入数据',mterror,[mbok],0)
  else
  begin
a:=strtofloat(edit1.Text);
flag2:=3;
  edit1.Text:='';
end;
end;
end;

procedure TForm1.Button16Click(Sender: TObject);
begin
if flag2=0  then
begin
  if edit1.text='' then
  messagedlg( '请输入数据',mterror,[mbok],0)
  else
  begin
a:=strtofloat(edit1.Text);
flag2:=4;
 edit1.Text:='';
end;
end;
end;

procedure TForm1.Button17Click(Sender: TObject);
begin
 if flag2<>0 then
 begin
case flag2 of
1:
begin
b:=strtofloat(edit1.text);
sum:=a+b;
edit1.Text:='结果为:'+floattostr(sum);
  end;
  2:
begin
b:=strtofloat(edit1.text);
sum:=a-b;
edit1.Text:='结果为:'+floattostr(sum);
  end;
  3:
begin
b:=strtofloat(edit1.text);
sum:=a*b;
edit1.Text:='结果为:'+floattostr(sum);
  end;
  4:
begin
if edit1.Text='' then
messagedlg( '请输入数据',mterror,[mbok],0)
 else
 begin
b:=strtofloat(edit1.text);
if b<>0 then
begin
sum:=a/b;
edit1.Text:='结果为:'+floattostr(sum);
end
else
begin
messagedlg('除数不能为零',mterror,[mbok],0) ;
  edit1.Text:='';

  end;
  end;
  end;
end;
end;
flag3:=1;
flog:=0;
flag1:=0;
flag2:=0;
a:=0;
b:=0;
end;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -