DELPHI计算器设计代码
Delphi代码标准文档

Delphi代码标准文档2004年5月目录1 前言 (3)2 源程序书写规范 (3)2.1通用源代码格式规则 (3)2.2 Object Pascal语句格式语句书写规范与用法 (4)3 命名规范 (9)3.1 过程(Procedure)与函数(Function) (9)3.2 常量(Constants)和变量(Variable) (10)3.3 类型(Type) (10)3.3.1 一般类型 (10)3.3.2 构造类型 (11)3.3.3 类类型(Class) (11)3.3.4 元件类型 (13)3.3.5 窗体与对话框类型 (15)3.3.6 数据模块类型 (17)3.4 文件 (18)3.4.1 项目文件 (18)3.4.2 窗体文件 (18)3.4.3 数据模块文件 (18)3.4.4 远程数据模块文件 (19)3.4.5 单元文件 (19)3.5 内置汇编 (21)4 源程序文档注释规范 (21)4.1. 注释文档的一般规范 (21)4.2 单元文件注释文档格式 (23)4.3 函数(属性)的注释文档格式 (25)5 delphi代码自动格式化工具 (27)6 代码标准文档更新 (27)1 前言本文档主要是为Delphi开发人员提供一个源代码书写标准,以及程序和文件的命名标准,使他们在编程时有一致格式可遵循。
这样,每个编程人员编写的代码能够被其他人理解。
2 源程序书写规范2.1通用源代码格式规则1). 缩进缩进就是每级间有两个空格。
不要在源代码中放置制表符。
这是因为,制表符的宽度随着不同的设置和代码管理实用程序(打印、文档及版本控制等)而不同。
通过使用Tools|Environment 菜单,在Environment Options 对话框的General页上,不要选中Use Tab Character 和Optional Fill 复选框,这样,制表符就不会被保存。
2). 边距边距设置为80个字符。
delphi计算器设计代码

varForm1: TForm1;Temp1 : string; //存放数值一和结果Clkd : boolean = false; //等号是否被按下过,默认为为按下过ClkJ : boolean = false; //数字键是否被按下过,默认为未按下过Temp2 : string; //存放数值二n : Integer;implementation{$R *.dfm}procedure TForm1.Button13Click(Sender: TObject);beginif Clkd = true thenbeginEdit1.Text := ''; //如果等号按下过,清空Edit1的内容Clkd := false; //还原等号状态值if Edit1.Text = '' thenEdit1.Text := '0' //如果Edit1内容为空,显示0elseEdit1.Text := Edit1.Text + '0'; //否则在Edit1内容的后一位显示0 endelseif ClkJ =true then //如果等号没有按下过,数字键按下过Edit1.Text := Edit1.Text + '0' //则在Edit1内容的后一位显示0elseEdit1.Text := '0'; //否则Edit1显示0ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button9Click(Sender: TObject);beginif Clkd = true thenbeginEdit1.Text := ''; //如果等号按下过,清空Edit1的内容Clkd := false; //还原等号状态值if Edit1.Text = '' then //如果Edit1内容为空,显示1Edit1.Text := '1'elseEdit1.Text := Edit1.Text + '1'; //否则在Edit1内容的后一位显示1 endelseif ClkJ =true then //如果等号没有按下过,数字键按下过Edit1.Text := Edit1.Text + '1'elseEdit1.Text := '1';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button10Click(Sender: TObject);beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '2'elseEdit1.Text := Edit1.Text + '2';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '2'elseEdit1.Text := '2';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button11Click(Sender: TObject);beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '3'elseEdit1.Text := Edit1.Text + '3';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '3'elseEdit1.Text := '3';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button5Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '4'elseEdit1.Text := Edit1.Text + '4';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '4'elseEdit1.Text := '4';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button6Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '5'elseEdit1.Text := Edit1.Text + '5';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '5'elseEdit1.Text := '5';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button7Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '6'elseEdit1.Text := Edit1.Text + '6';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '6'elseEdit1.Text := '6';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button1Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '7'elseEdit1.Text := Edit1.Text + '7';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '7'elseEdit1.Text := '7';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button2Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '8'elseEdit1.Text := Edit1.Text + '8';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '8'elseEdit1.Text := '8';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button3Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '9'elseEdit1.Text := Edit1.Text + '9';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '9'elseEdit1.Text := '9';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button14Click(Sender: TObject); beginif Clkd = true thenbeginEdit1.Text := '';Clkd := false;if Edit1.Text = '' thenEdit1.Text := '.'elseEdit1.Text := Edit1.Text + '.';endelseif ClkJ =true thenEdit1.Text := Edit1.Text + '.'elseEdit1.Text := '.';ClkJ := true;Temp2 := Edit1.Text;end;procedure TForm1.Button4Click(Sender: TObject);beginn := 1; //加法运算符号Temp1 := Edit1.Text;Edit1.clear;end;procedure TForm1.Button8Click(Sender: TObject);beginn := 2; //减法运算符号Temp1 := Edit1.Text;Edit1.Clear;end;procedure TForm1.Button12Click(Sender: TObject);beginn := 3; //乘法运算符号Temp1 := Edit1.Text;Edit1.Clear;end;procedure TForm1.Button16Click(Sender: TObject);beginn := 4; //除法运算符号Temp1 := Edit1.Text;Edit1.Clear;end;procedure TForm1.Button17Click(Sender: TObject);beginEdit1.clear; //清空上次运行的数据end;procedure TForm1.Button18Click(Sender: TObject);beginForm1.close;end;procedure TForm1.Button15Click(Sender: TObject); //加减乘除运算过程begincase n of1: Temp1 := FloatToStr(StrToFloat(Temp1) + StrToFloat(Temp2));2: Temp1 := FloatToStr(StrToFloat(Temp1) - StrToFloat(Temp2));3: Temp1 := FloatToStr(StrToFloat(Temp1) * StrToFloat(Temp2));4: if StrToFloat(Edit1.Text) = 0 thenbeginTemp1 := '除法运算中,除数不能为0';exit;endelseTemp1 := FloatToStr(StrToFloat(Temp1) / StrToFloat(Temp2))//Edit1.Text := Result;// else//Edit1.Text := Temp1;end;Edit1.Text := Temp1;Clkd := true;end;end.。
delphi 用TList实现的简单计算器

interfaceusesWindows, Messages, SysUtils, Variants, Classes, Dialogs, Math, Graphics, Controls, Forms, StdCtrls;typeTForm1 = class(TForm)edt1: TEdit;btn10: TButton;btn1: TButton;btn2: TButton;btn3: TButton;btn4: TButton;btn5: TButton;btn6: TButton;btn7: TButton;btn8: TButton;btn9: TButton;btnEqual: TButton;btn12: TButton;btnC: TButton;btn14: TButton;procedure FormCreate(Sender: TObject);procedure FormDestroy(Sender: TObject);procedure opInput(Sender: TObject);procedure btnEqualClick(Sender: TObject);procedure btnCClick(Sender: TObject);function isDigit(s: string): Boolean;procedure numInput(Sender: TObject);//procedure numOpInput(Sender: TObject);private{}end;{自定义的TMyList类}TMyList = class(TList)end;varForm1: TForm1;List: TMyList;tempStr: string;implementation{$R *.dfm}{创建}procedure TForm1.FormCreate(Sender: TObject);beginList := TMyList.Create;edt1.Text := '';end;{释放}procedure TForm1.FormDestroy(Sender: TObject);beginList.Free;end;{判断一个字符串是否为数字}function TForm1.isDigit(s: string): Boolean;vari: Integer;beginResult := True;for i := 1 to Length(s) dobeginif not(s[i] in ['0'..'9','.']) thenResult := False;end;end;{输入数字处理}procedure TForm1.numInput(Sender: TObject);beginif(edt1.Text = '') or (string(st^) = '+') or (string(st^) = '*') then beginedt1.Text := (Sender as TButton).Caption;endelsebeginedt1.Text := edt1.Text + (Sender as TButton).Caption;end;tempStr := edt1.Text;end;{操作符处理}procedure TForm1.opInput(Sender: TObject);beginif isDigit(tempStr) and (tempStr <> '') thenbeginnew(str);str^ := tempStr;List.Add(str);tempStr := '';end;if List.Count = 0 thenbeginShowMessage('输入无效,请先输入数字');exit;//跳出本过程endelsebeginedt1.Text := (Sender as TButton).Caption;New(str);str^ := edt1.Text;List.Add(str);edt1.Clear;end;end;{等号处理list}procedure TForm1.btnEqualClick(Sender: TObject); var//tempResult: Extended;temp: Extended;tempStr1, tempStr2: string;i: Integer;beginnew(str);str^ := tempStr;List.Add(str);edt1.Clear;tempStr := '';if List.Count = 0 thenShowMessage('empty list')elsebeginfor i := 0 to List.Count - 1 dobegintempStr1 := string(List.Items[i]^);if tempStr1 = '+' thenbegintempStr1 := string(List.Items[i - 1]^);tempStr2 := string(List.Items[i + 1]^);New(str);str^ := FloatToStr(StrToFloat(tempStr1) + StrToFloat(tempStr2));List.Delete(i + 1);List.Insert(i + 1, str);end;if tempStr1 = '*' thenbegintempStr1 := string(List.Items[i - 1]^);tempStr2 := string(List.Items[i + 1]^);New(str);temp := StrToFloat(tempStr1) * StrToFloat(tempStr2);str^ := FloatToStr(temp);List.Delete(i + 1);List.Insert(i + 1, str);end;end;edt1.Text := string(List.Items[List.Count - 1]^);List.Clear;New(str);str^ := edt1.Text;List.Add(str);//ShowMessageFmt('count=%d',[List.Count]);end;end;procedure TForm1.btnCClick(Sender: TObject);beginif List.Count = 0 thenShowMessage('list为空,不用清空');List.clear;edt1.Text := '';end;end.。
delphi编写简单的计算器

procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure TForm1.Button11Click(Sender: TObject);
var //n:integer;
// temp1:string;
temp2,temp3:extended;
begin
temp3:=strtofloat(edit1.Text);
begin
procedure TForm1.Button8Click(Sender: TObject);
begin
if key=true
then
edit1.Text:=edit1.Text+'8'
else beg
in
var
Form1: TForm1;
n:integer;
temp1:extended;
key:boolean;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if key=true
begin
if key=true
then
edit1.Text:=edit1.Text+'3'
delphi fft 程序代码

标题:深度解析Delphi中的FFT程序代码在Delphi中,FFT(快速傅里叶变换)算法是一种常用的数学计算方法,用于处理信号和图像处理、数据压缩、声音分析等领域。
本文将深度解析Delphi中的FFT程序代码,帮助读者全面理解并掌握这一重要的算法。
一、FFT简介快速傅里叶变换(FFT)是一种离散傅里叶变换(DFT)的快速算法,能够在计算机上高效地计算离散信号的频谱。
FFT算法在数字信号处理中得到广泛应用,是一种高效的频域分析方法。
在Delphi中,我们可以利用现成的FFT库或者自行编写FFT算法来实现信号的频域分析。
接下来,我们将对Delphi中常用的FFT程序代码进行深入讨论。
二、Delphi中的FFT程序代码在Delphi中,可以使用现成的FFT库来实现快速傅里叶变换,也可以自行编写FFT算法。
下面以调用现成的FFT库为例进行讨论。
1. 引入FFT库要在Delphi中进行FFT变换,首先需要引入FFT库。
可以在Delphi 的组件库中找到对应的FFT组件,或者下载第三方的FFT库,并在项目中引入相关的单元或者库文件。
2. 调用FFT函数一般来说,FFT库会提供FFT函数,我们可以通过调用这些函数来实现快速傅里叶变换。
在Delphi中,可以通过简单的函数调用来完成FFT变换,实现信号的频域分析。
以下是一个简单的示例代码:```delphivarSignal: TArray<Double>;FreqDomain: TArray<Complex>;begin// 初始化信号// ...// 进行FFT变换FFT(Signal, FreqDomain);// 处理频域数据// ...end;```以上代码演示了如何利用FFT库进行信号的频域分析,通过调用FFT 函数实现快速傅里叶变换,得到频域数据。
接下来我们将对FFT算法进行深入探讨。
三、FFT算法原理FFT算法是一种复杂的数学计算方法,其原理涉及到复数运算、递归计算等多个方面。
delphi 随机生成四则运算题目

delphi 随机生成四则运算题目在 Delphi 中,你可以使用随机数生成器来生成四则运算题目。
以下是一个简单的示例,演示如何生成两个随机数和一个随机运算符,然后计算结果:```delphiprogram RandomArithmeticQuestion;{$APPTYPE CONSOLE}usesSysUtils, Classes;vara, b, operatorChar, result: Integer;beginWriteLn('随机四则运算题目:');// 生成两个随机数a := RandomRange(1, 100);b := RandomRange(1, 100);// 生成一个随机运算符operatorChar := RandomRange(Ord('+'), Ord('-'));// 根据运算符计算结果case operatorChar ofOrd('+'): result := a + b;Ord('-'): result := a - b;Ord(''): result := a b;Ord('/'): result := a div b; // 注意:这里使用 div,因为 Delphi 没有直接支持整数除法操作符 '/'end;// 输出题目和答案WriteLn(Format('题目: %d %c %d = ?', [a, Chr(operatorChar), b])); WriteLn('答案: ' + IntToStr(result));end.```这个程序首先生成两个介于 1 和 100 之间的随机整数(`a` 和 `b`),然后选择一个随机的运算符(`+`、`-`、`` 或 `/`)。
根据运算符,程序计算结果并将题目和答案输出到控制台。
编写相应的Delphi程序分别实现以下科学计算功能

一、编写相应的Delphi程序,分别实现以下科学计算功能:3. 计算级数∑∞=1!3nnn,精确到10-6 .要点:取不断增大的n值,计算∑∞=1! 3nnn的值,比较值的变化。
2.定义一个学生成绩类来统计一次考试的成绩。
要求:(1)从records.txt 读入每个学生每门功课成绩。
(2)求出每个学生的总分并输出到文件mark.txt。
(3)求出每门功课的平均分并输出到文件average.txt提示:假设有90名学生,5门课。
定义数据成员数组mark[90][5] 表示90个学生5 门功课的成绩。
对每个要求设计一个公有函数,分别为Input(), Total(), Average()。
在主函数中分别调用这三个函数。
records.txt 的格式:陈大85 79 84 78 90王二89 92 73 89 80张三65 97 60 58 62李四85 86 84 82 83王五91 93 89 87 95…………………………………….mark.txt 的格式:姓名总分average.txt 的格式:科目编号(1-5)平均分2.加密和解密。
有一行电文(从文件coded.txt 读入,不超过1024个字符),已按下面规律译成了密码:A――>Z a――>zB――>Y b――>yC――>X c――>x……….. ………..即第1 个字母变成第26 个字母,第2 个字母变成第25 个字母,第i 个字母变成第(26-i+1) 个字母,非字母字符时不变。
要求编出程序,将密码还原成原文,并输出密码和原文到文件decode.txt 。
文件code.txt 的格式:R zn z xloovtv hgfwvmg uiln wvkzignvmg lu xlnkfgvi zkkorxzgrlm.文件decode.txt 格式:密文:R zn z xloovtv hgfwvmg uiln wvkzignvmg lu xlnkfgvi zkkorxzgrlm.原文:I am a college student from department of computer application.。
Delphi代码编写标准详解

Delphi编写标准指南一、序言二、通用源代码格式规则2.1 缩格2.2 页边空格2.3 Begin...End 配对三、Object Pascal3.1 括号3.2 保留字和关键字3.3 过程和函数(例程)3.3.1 命名/格式化3.3.2 形式参数3.3.2.1 格式化3.3.2.2 命名3.3.2.3 参数的排序3.3.2.4 常量参数3.3.2.5 名称的冲突3.4 变量3.4.1 变量的命名和格式3.4.2 局部变量3.4.3 全局变量的使用3.5 类型3.5.1 大写约定3.5.1.1 浮点指针类型3.5.1.2 枚举类型3.5.1.3 变数和ole变数类型3.5.2 结构类型3.5.2.1 数组类型3.5.2.2 记录类型3.6 语句3.6.1 if 语句3.6.2 case 语句3.6.2.1 一般性话题3.6.2.2 格式3.6.3 while 语句3.6.4 for 语句3.6.5 repeat 语句3.6.6 with 语句3.6.6.1 一般话题3.6.6.2 格式3.7 结构异常处理3.7.1 一般话题3.7.2 try...finally的使用3.7.3 try...except的使用3.7.4 try...except...else的使用3.8 类类型3.8.1 命名和格式3.8.2 域3.8.2.1 命名/格式3.8.2.2 可视化3.8.3 方法3.8.3.1 命名/格式3.8.3.2 使用静态的方法3.8.3.3 使用虚拟/动态的方法3.8.3.4 使用抽象的方法3.8.3.5 属性存取方法3.8.4 属性3.8.4.1 命名/格式3.8.4.2 使用存取的方法四、文件4.1 工程文件4.1.1 命名4.2 窗体文件4.2.1 命名4.3 数据模板文件4.3.1 命名4.4 远端数据模板文件4.4.1 命名4.5 Unit文件4.5.1 通用Unit结构4.5.1.1 unit的名字4.5.1.2 uses子句4.5.1.3 interface部分4.5.1.4 implementation部分4.5.1.5 initialization部分4.5.1.6 finalization部分4.5.2 窗体单元4.5.2.1 命名4.5.3 数据模板单元4.5.3.1 命名4.5.4 一般目的单元4.5.4.1 命名4.5.5 构件单元4.5.5.1 命名4.6 文件头五、窗体和数据模板5.1 窗体5.1.1 窗体类型命名标准5.1.2 窗体实例命名标准5.1.3 自动创建窗体5.1.4 模式窗体实例化函数5.2 数据模板5.2.1 数据模板命名标准5.2.2 数据模板实例命名标准六、包6.1 使用运行包和设计包的比较6.2 文件命名标准七、构件7.1 用户自定义构件7.2 构件单元7.3 使用注册单元7.4 构件实例命名约定7.5 构件的前缀7.6 Standard页7.7 Additional页7.8 Win32页7.9 System页7.10 Internet页7.11 Data Access页7.12 Data Controls页7.13 Decision Cube页7.14 QReport页7.15 Dialogs页7.16 Win3.1页7.17 Samples页7.18 ActiveX页7.19 Midas页一、序言本文档详述了在Delphi 4开发者指南下进行编程的代码编写标准。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
varForm1:TForm1;Temp1:string;//存放数值一和结果Clkd:boolean=false;//等号是否被按下过,默认为为按下过ClkJ:boolean=false;//数字键是否被按下过,默认为未按下过Temp2:string;//存放数值二n:Integer;implementation{$R*.dfm}procedure TForm1.Button13Click(Sender:TObject);beginif Clkd=true thenbeginEdit1.Text:='';//如果等号按下过,清空Edit1的内容Clkd:=false;//还原等号状态值if Edit1.Text=''thenEdit1.Text:='0'//如果Edit1内容为空,显示0elseEdit1.Text:=Edit1.Text+'0';//否则在Edit1内容的后一位显示0 endelseif ClkJ=true then//如果等号没有按下过,数字键按下过Edit1.Text:=Edit1.Text+'0'//则在Edit1内容的后一位显示0elseEdit1.Text:='0';//否则Edit1显示0ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button9Click(Sender:TObject);beginif Clkd=true thenbeginEdit1.Text:='';//如果等号按下过,清空Edit1的内容Clkd:=false;//还原等号状态值if Edit1.Text=''then//如果Edit1内容为空,显示1Edit1.Text:='1'elseEdit1.Text:=Edit1.Text+'1';//否则在Edit1内容的后一位显示1 endelseif ClkJ=true then//如果等号没有按下过,数字键按下过Edit1.Text:=Edit1.Text+'1'elseEdit1.Text:='1';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button10Click(Sender:TObject);beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='2'elseEdit1.Text:=Edit1.Text+'2';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'2'elseEdit1.Text:='2';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button11Click(Sender:TObject);beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='3'elseEdit1.Text:=Edit1.Text+'3';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'3'elseEdit1.Text:='3';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button5Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='4'elseEdit1.Text:=Edit1.Text+'4';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'4'elseEdit1.Text:='4';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button6Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='5'elseEdit1.Text:=Edit1.Text+'5';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'5'elseEdit1.Text:='5';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button7Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='6'elseEdit1.Text:=Edit1.Text+'6';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'6'elseEdit1.Text:='6';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button1Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='7'elseEdit1.Text:=Edit1.Text+'7';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'7'elseEdit1.Text:='7';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button2Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='8'elseEdit1.Text:=Edit1.Text+'8';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'8'elseEdit1.Text:='8';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button3Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='9'elseEdit1.Text:=Edit1.Text+'9';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'9'elseEdit1.Text:='9';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button14Click(Sender:TObject); beginif Clkd=true thenbeginEdit1.Text:='';Clkd:=false;if Edit1.Text=''thenEdit1.Text:='.'elseEdit1.Text:=Edit1.Text+'.';endelseif ClkJ=true thenEdit1.Text:=Edit1.Text+'.'elseEdit1.Text:='.';ClkJ:=true;Temp2:=Edit1.Text;end;procedure TForm1.Button4Click(Sender:TObject);beginn:=1;//加法运算符号Temp1:=Edit1.Text;Edit1.clear;end;procedure TForm1.Button8Click(Sender:TObject);beginn:=2;//减法运算符号Temp1:=Edit1.Text;Edit1.Clear;end;procedure TForm1.Button12Click(Sender:TObject);beginn:=3;//乘法运算符号Temp1:=Edit1.Text;Edit1.Clear;end;procedure TForm1.Button16Click(Sender:TObject);beginn:=4;//除法运算符号Temp1:=Edit1.Text;Edit1.Clear;end;procedure TForm1.Button17Click(Sender:TObject);beginEdit1.clear;//清空上次运行的数据end;procedure TForm1.Button18Click(Sender:TObject);beginForm1.close;end;procedure TForm1.Button15Click(Sender:TObject);//加减乘除运算过程begincase n of1:Temp1:=FloatToStr(StrToFloat(Temp1)+StrToFloat(Temp2));2:Temp1:=FloatToStr(StrToFloat(Temp1)-StrToFloat(Temp2));3:Temp1:=FloatToStr(StrToFloat(Temp1)*StrToFloat(Temp2));4:if StrToFloat(Edit1.Text)=0thenbeginTemp1:='除法运算中,除数不能为0';exit;endelseTemp1:=FloatToStr(StrToFloat(Temp1)/StrToFloat(Temp2))//Edit1.Text:=Result;//else//Edit1.Text:=Temp1;end;Edit1.Text:=Temp1;Clkd:=true;end;end.。