代码2.docx
《代码2.docx》由会员分享,可在线阅读,更多相关《代码2.docx(11页珍藏版)》请在冰豆网上搜索。
![代码2.docx](https://file1.bdocx.com/fileroot1/2023-2/3/ac1997f5-3ea5-4188-a9cc-299584f0c777/ac1997f5-3ea5-4188-a9cc-299584f0c7771.gif)
代码2
代码:
unitUnit1;
interface
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,Menus,StdCtrls;
type
TForm1=class(TForm)
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;
Button21:
TButton;
Button22:
TButton;
Button23:
TButton;
Button24:
TButton;
Button17:
TButton;
Button18:
TButton;
Button19:
TButton;
Edit1:
TEdit;
MainMenu1:
TMainMenu;
E1:
TMenuItem;
H1:
TMenuItem;
C1:
TMenuItem;
P1:
TMenuItem;
A1:
TMenuItem;
procedureButton9Click(Sender:
TObject);
procedureFormCreate(Sender:
TObject);
procedureButton4Click(Sender:
TObject);
procedureButton8Click(Sender:
TObject);
procedureButton12Click(Sender:
TObject);
procedureButton16Click(Sender:
TObject);
procedureButton22Click(Sender:
TObject);
procedureButton21Click(Sender:
TObject);
procedureButton23Click(Sender:
TObject);
procedureButton10Click(Sender:
TObject);
procedureButton11Click(Sender:
TObject);
procedureButton5Click(Sender:
TObject);
procedureButton6Click(Sender:
TObject);
procedureButton7Click(Sender:
TObject);
procedureButton1Click(Sender:
TObject);
procedureButton2Click(Sender:
TObject);
procedureButton3Click(Sender:
TObject);
procedureButton13Click(Sender:
TObject);
procedureButton14Click(Sender:
TObject);
procedureButton15Click(Sender:
TObject);
procedureButton17Click(Sender:
TObject);
procedureC1Click(Sender:
TObject);
procedureP1Click(Sender:
TObject);
procedureButton19Click(Sender:
TObject);
procedureButton24Click(Sender:
TObject);
procedureButton18Click(Sender:
TObject);
procedureFormCanResize(Sender:
TObject;varNewWidth,
NewHeight:
Integer;varResize:
Boolean);
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
Form1:
TForm1;
FyunsuanfuFlag:
Boolean;
Fynsuanfu:
AnsiChar;
FLaststr:
ShortString;
FdoubleFlag:
Boolean;
Fclick:
Boolean;
implementation
{$R*.dfm}
functioncheckkindtoNum(s:
string):
Variant;
begin
ifs<>''then
begin
ifPos('.',s)=0then
Result:
=StrToInt64(s)
else
result:
=StrToFloat(s);
end;
end;
functionjisuan2(str:
String):
String;
vars:
String;
aa:
Variant;
bb:
Variant;
begin
aa:
=checkkindtoNum(FLaststr);
bb:
=checkkindtoNum(str);
caseFynsuanfuof
'+':
s:
=FloatToStr(aa+bb);
'-':
s:
=FloatToStr(aa-bb);
'*':
s:
=FloatToStr(aa*bb);
'/':
s:
=FloatToStr(aa/bb);
'^':
s:
=FloatToStr(sqr(bb));
'x':
s:
=FloatToStr(1/bb);
'%':
s:
=FloatToStr(sqrt(bb));
End;
FLaststr:
=s;
Fynsuanfu:
='~';
Fclick:
=false;
Result:
=s;
end;
procedureTForm1.Button9Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'1';
Fclick:
=True;
End;
procedureTForm1.FormCreate(Sender:
TObject);
begin
FyunsuanfuFlag:
=False;
FdoubleFlag:
=True;
Fclick:
=false;
Edit1.Text:
='0.';
SetWindowLong(Edit1.Handle,GWL_STYLE,GetWindowLong(Edit1.Handle,GWL_STYLE)orEs_right);
end;
procedureTForm1.Button4Click(Sender:
TObject);
begin
ifedit1.text<>'0.'then
begin
ifFyunsuanfuFlagand(FLaststr<>'')andFclickthen
Begin
Edit1.Text:
=jisuan2(Edit1.Text);
endelse
begin
FyunsuanfuFlag:
=true;
Fynsuanfu:
='/';
Fclick:
=false;
FLaststr:
=Edit1.Text;
end;
Fynsuanfu:
='/';
FdoubleFlag:
=True;
end;
end;
procedureTForm1.Button8Click(Sender:
TObject);
begin
ifedit1.text<>'0.'then
begin
ifFyunsuanfuFlagand(FLaststr<>'')andFclickthen
Begin
Edit1.Text:
=jisuan2(Edit1.Text);
endelse
begin
FyunsuanfuFlag:
=true;
Fynsuanfu:
='*';
Fclick:
=false;
FLaststr:
=Edit1.Text;
end;
Fynsuanfu:
='*';
FdoubleFlag:
=True;
end;
end;
procedureTForm1.Button12Click(Sender:
TObject);
begin
ifedit1.text<>'0.'then
begin
ifFyunsuanfuFlagand(FLaststr<>'')andFclickthen
Begin
Edit1.Text:
=jisuan2(Edit1.Text);
endelse
begin
FyunsuanfuFlag:
=true;
Fynsuanfu:
='-';
Fclick:
=false;
FLaststr:
=Edit1.Text;
end;
Fynsuanfu:
='-';
FdoubleFlag:
=True;
end;
end;
procedureTForm1.Button16Click(Sender:
TObject);
begin
ifedit1.text<>'0.'then
begin
ifFyunsuanfuFlagand(FLaststr<>'')andFclickthen
Begin
Edit1.Text:
=jisuan2(Edit1.Text);
endelse
begin
FyunsuanfuFlag:
=true;
Fynsuanfu:
='+';
Fclick:
=false;
FLaststr:
=Edit1.Text;
end;
Fynsuanfu:
='+';
FdoubleFlag:
=True;
end;
End;
procedureTForm1.Button22Click(Sender:
TObject);
begin
Fynsuanfu:
='%';
FdoubleFlag:
=True;
Edit1.Text:
=jisuan2(Edit1.Text);
FLaststr:
='';
end;
procedureTForm1.Button21Click(Sender:
TObject);
begin
Fynsuanfu:
='^';
FdoubleFlag:
=True;
Edit1.Text:
=jisuan2(Edit1.Text);
FLaststr:
='';
end;
procedureTForm1.Button23Click(Sender:
TObject);
begin
Fynsuanfu:
='x';
FdoubleFlag:
=True;
Edit1.Text:
=jisuan2(Edit1.Text);
FLaststr:
='';
end;
procedureTForm1.Button10Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'2';
Fclick:
=True;
end;
procedureTForm1.Button11Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'3';
Fclick:
=True;
end;
procedureTForm1.Button5Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'4';
Fclick:
=True;
end;
procedureTForm1.Button6Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'5';
Fclick:
=True;
end;
procedureTForm1.Button7Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'6';
Fclick:
=True;
end;
procedureTForm1.Button1Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'7';
Fclick:
=True;
end;
procedureTForm1.Button2Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'8';
Fclick:
=True;
end;
procedureTForm1.Button3Click(Sender:
TObject);
begin
ifFdoubleFlagOr(Edit1.Text='0')then
begin
Edit1.Text:
='';
FdoubleFlag:
=False;
end;
Edit1.Text:
=Edit1.Text+'9';
Fclick:
=True;
end;
procedureTForm1.Button13Click(Sender:
TObject);
begin
ifEdit1.Text<>'0.'then
begin
Edit1.Text:
=Edit1.Text+'0';
endelse
Edit1.Text:
='0';
end;
procedureTForm1.Button14Click(Sender:
TObject);
Var
s:
string;
begin
s:
=edit1.text;
ifEdit1.Text[1]<>'-'then
begin
Insert('-',s,1);
Edit1.Text:
=s;
endelse
begin
Delete(s,1,1);
Edit1.Text:
=s;
end;
end;
procedureTForm1.Button15Click(Sender:
TObject);
begin
ifPos('.',Edit1.Text)=0then
Begin
Edit1.Text:
=Edit1.Text+'.';
FdoubleFlag:
=False;
End;
end;
procedureTForm1.Button17Click(Sender:
TObject);
var
s:
string;
begin
s:
=Edit1.Text;
delete(s,length(Edit1.Text),1);
Edit1.Text:
=s;
ifFyunsuanfuFlagthen
begin
FLaststr:
=s;
end;
end;
procedureTForm1.C1Click(Sender:
TObject);
begin
Edit1.CutToClipboard;
end;
procedureTForm1.P1Click(Sender:
TObject);
begin
Edit1.Text:
='';
Edit1.PasteFromClipboard;
end;
procedureTForm1.Button19Click(Sender:
TObject);
begin
FdoubleFlag:
=True;
FyunsuanfuFlag:
=False;
FLaststr:
='';
Fclick:
=false;
Fynsuanfu:
='~';
Edit1.Text:
='0.';
end;
procedureTForm1.Button24Click(Sender:
TObject);
begin
ifFyunsuanfuFlagthen
begin
Edit1.text:
=jisuan2(Edit1.Text);
FyunsuanfuFlag:
=False;
FdoubleFlag:
=True;
end;
end;
procedureTForm1.Button18Click(Sender:
TObject);
begin
Edit1.Text:
='';
end;
procedureTForm1.FormCanResize(Sender:
TObject;varNewWidth,
NewHeight:
Integer;varResize:
Boolean);
begin
Resize:
=False;
end;
end.
界面: