📄 ji.pas
字号:
unit ji;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Button9: TButton;
Button11: TButton;
Button12: TButton;
Button13: TButton;
Button14: TButton;
Button15: TButton;
Button17: TButton;
Button18: TButton;
Button19: TButton;
Button20: TButton;
Button21: TButton;
Button23: TButton;
Button24: TButton;
Button25: TButton;
Button26: TButton;
Button27: TButton;
MainMenu1: TMainMenu;
f1: TMenuItem;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
Label1: TLabel;
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Button12Click(Sender: TObject);
procedure Button13Click(Sender: TObject);
procedure Button17Click(Sender: TObject);
procedure Button18Click(Sender: TObject);
procedure Button19Click(Sender: TObject);
procedure Button23Click(Sender: TObject);
procedure Button26Click(Sender: TObject);
procedure Button27Click(Sender: TObject);
procedure Button20Click(Sender: TObject);
procedure Button14Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button25Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button15Click(Sender: TObject);
procedure Button10Click(Sender: TObject);
procedure Button16Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button22Click(Sender: TObject);
procedure Button21Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button24Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
x:real; //第一个数被X存放
y:real; //第二个数被Y存放
z:real; //点击等号后用于存放结果
temp:integer; //判断运算符号
m:real; //MS,缓存数据
b:boolean=false; //正负号判断
a:integer=0; //进行连续相加相乘运算
cnum:integer=0; //判断是否点过等于,点击数字重新置入
var v:real; //复制与粘帖
implementation
{$R *.dfm}
procedure TForm1.Button5Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'7'
else
edit1.Text:='7';
cnum:=0;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'8'
else
edit1.Text:='8';
cnum:=0;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'9'
else
edit1.Text:='9';
cnum:=0;
end;
procedure TForm1.Button11Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'4'
else
edit1.Text:='4';
cnum:=0;
end;
procedure TForm1.Button12Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'5'
else
edit1.Text:='5';
cnum:=0;
end;
procedure TForm1.Button13Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'6'
else
edit1.Text:='6';
cnum:=0;
end;
procedure TForm1.Button17Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'1'
else
edit1.Text:='1';
cnum:=0;
end;
procedure TForm1.Button18Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'2'
else
edit1.Text:='2';
cnum:=0;
end;
procedure TForm1.Button19Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'3'
else
edit1.Text:='3';
cnum:=0;
end;
procedure TForm1.Button23Click(Sender: TObject);
begin
if cnum=0 then
edit1.Text:=edit1.Text+'0'
else
edit1.Text:='0';
cnum:=0;
end;
procedure TForm1.Button26Click(Sender: TObject);
begin
if a=0 then
begin
if edit1.text='' then //判断当前是否有数据
else
x:=strtofloat(edit1.text);
edit1.text:='';
temp:=0;
a:=1;
end
else
begin
if edit1.text='' then //判断是否有第二个数据,没有则自加
else
y:=strtofloat(edit1.text);
z:=x+y;
x:=z;
edit1.Text:=floattostr(z);
cnum:=1;
end;
{ else if a=1 then
begin
y:=strtofloat(edit1.Text);
z:=x+y;
edit1.Text:=floattostr(z);
x:=strtofloat(edit1.text);
a:=a+1;
end
else
begin
y:=strtofloat(edit1.Text);
z:=x+y;
edit1.Text:=floattostr(z);
x:=strtofloat(edit1.text);
end;}
end;
procedure TForm1.Button27Click(Sender: TObject);
begin
y:=strtofloat(edit1.Text);
case temp of
0: z:=x+y;
1: z:=x-y;
2: z:=x*y;
3: z:=x/y;
end;
edit1.text:=floattostr(z);
a:=0;
cnum:=1;
end;
procedure TForm1.Button20Click(Sender: TObject);
begin
if a=0 then
begin
if edit1.text='' then
else
x:=strtofloat(edit1.text);
edit1.text:='';
temp:=1;
a:=1;
end
else
begin
if edit1.Text='' then
else
y:=strtofloat(edit1.text);
z:=x-y;
x:=z;
edit1.Text:=floattostr(z);
cnum:=1;
end;
end;
procedure TForm1.Button14Click(Sender: TObject);
begin
if a=0 then
begin
x:=strtofloat(edit1.text);
edit1.text:='';
temp:=2;
a:=1;
end
else
begin
if edit1.Text='' then
else
y:=strtofloat(edit1.text);
z:=x*y;
x:=z;
edit1.Text:=floattostr(z);
cnum:=1;
end;
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
if a=0 then
begin
x:=strtofloat(edit1.text);
edit1.text:='';
temp:=3;
a:=1;
end
else
begin
if edit1.Text='' then
else
y:=strtofloat(edit1.text);
z:=x/y;
x:=z;
edit1.Text:=floattostr(z);
cnum:=1;
end;
end;
procedure TForm1.Button25Click(Sender: TObject);
begin
edit1.Text:=edit1.Text+'.';
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
edit1.text:='';
a:=0; //连加连乘取消
b:=false; //正负号为恢复默认
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.text:='';
x:=0;
y:=0;
z:=0;
cnum:=0;
a:=0;
b:=false;
m:=0;
end;
procedure TForm1.Button9Click(Sender: TObject);
var a:real;
begin
x:=strtofloat(edit1.Text);
a:=sqrt(x);
edit1.Text:=floattostr(a);
end;
procedure TForm1.Button15Click(Sender: TObject);
begin
x:=strtofloat(edit1.Text);
z:=x*100;
edit1.text:=floattostr(z);
end;
procedure TForm1.Button10Click(Sender: TObject);
begin
edit1.Text:=floattostr(m);
end;
procedure TForm1.Button16Click(Sender: TObject);
begin
if edit1.Text='' then
messagedlg('对不起,不能进行空存储',mtinformation,[mbok],0)
else
m:=strtofloat(edit1.Text);
label1.Caption:='M';
cnum:=1;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
m:=0;
edit1.text:='';
label1.Caption:='';
end;
procedure TForm1.Button22Click(Sender: TObject);
begin
if edit1.Text='' then
messagedlg('对不起,不能进行空存储',mtinformation,[mbok],0)
else
m:=strtofloat(edit1.Text);
label1.Caption:='M';
cnum:=1;
end;
procedure TForm1.Button21Click(Sender: TObject);
begin
x:=strtofloat(edit1.Text);
z:=1/x;
edit1.text:=floattostr(z);
end;
procedure TForm1.N6Click(Sender: TObject);
begin
showmessage('您好,欢迎使用!');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.SetFocus;
Edit1.SelStart := Length(Edit1.Text);
Edit1.Perform(WM_CHAR, VK_BACK,0);
end;
procedure TForm1.Button24Click(Sender: TObject);
begin
if b=false then
begin
edit1.Text:='-'+edit1.Text;
b:=true
end
else
begin
edit1.Text:='';
b:=false;
end;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
showmessage('您好,有任何问题请联系作者:陈朝熙');
end;
procedure TForm1.Edit1Change(Sender: TObject);
var
lStyle: Integer;
begin
lStyle := GetWindowLong(edit1.Handle, GWL_STYLE);
SetWindowLong(edit1.Handle, GWL_STYLE, lStyle or ES_RIGHT );
end;
procedure TForm1.N3Click(Sender: TObject);
begin
v:=strtofloat(edit1.Text);
end;
procedure TForm1.N4Click(Sender: TObject);
begin
edit1.Text:=floattostr(v);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -