今天女朋友的一门课,要求用delphi 软件编程,内容是一个计算器。当然,这个工作肯定是落在我的头上了。

这个软件是我第一次使用,边自学边进行代码编写,在n多次修改完善之后,终于成形。功能不是很多,跟C#很相似,但发现之前有很多在专业课中没有实现的功能,颇有成就感。

 unit jisuanqi;
//王永维,实现简单的加减乘除计算
interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls; type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
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;
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 Button11Click(Sender: TObject);
procedure Button12Click(Sender: TObject);
procedure Button13Click(Sender: TObject);
procedure Button14Click(Sender: TObject);
procedure Button15Click(Sender: TObject);
procedure Button16Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1;
shu1,shu2:Integer;
Shu11,Shu22:String;
fuhao:String;
shu1changdu,shu2changdu:Integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button3Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button4Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button5Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button6Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button7Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button8Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button9Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button10Click(Sender: TObject);
begin
edit1.Text :=edit1.Text+'';
end; procedure TForm1.Button11Click(Sender: TObject);
begin
edit1.Text :='';
end; procedure TForm1.Button12Click(Sender: TObject);
begin
Shu11:=Edit1.text;
shu1changdu:=length(Shu11);
shu1:=StrtoInt(Edit1.text); //将字符串转变为整型
edit1.Text :=edit1.Text+'+';
fuhao:='+';
end; procedure TForm1.Button13Click(Sender: TObject);
begin
Shu11:=Edit1.text;
shu1changdu:=length(Shu11);
shu1:=StrtoInt(Edit1.text); //将字符串转变为整型
edit1.Text :=edit1.Text+'-';
fuhao:='-';
end; procedure TForm1.Button14Click(Sender: TObject);
begin
Shu11:=Edit1.text;
shu1changdu:=length(Shu11);
shu1:=StrtoInt(Edit1.text); //将字符串转变为整型
edit1.Text :=edit1.Text+'*';
fuhao:='*';
end; procedure TForm1.Button15Click(Sender: TObject);
begin
Shu11:=Edit1.text;
shu1changdu:=length(Shu11);
shu1:=StrtoInt(Edit1.text); //将字符串转变为整型
edit1.Text :=edit1.Text+'/';
fuhao:='/';
end; procedure TForm1.Button16Click(Sender: TObject);
begin
Shu22:=Edit1.text;
shu2changdu:=length(Shu22); if fuhao='+' then
begin
Shu22:=copy(Shu22,shu1changdu+,shu2changdu); //截取出第二个数
shu2:=StrtoInt(Shu22); //将字符串转化为整形
edit1.Text :=InttoStr(shu1+shu2);
end;
if fuhao='-' then
begin
Shu22:=copy(Shu22,shu1changdu+,shu2changdu); //截取出第二个数
shu2:=StrtoInt(Shu22); //将字符串转变为整型
edit1.Text :=InttoStr(shu1-shu2);
end;
if fuhao='*' then
begin
Shu22:=copy(Shu22,shu1changdu+,shu2changdu); //截取出第二个数
shu2:=StrtoInt(Shu22); //将字符串转变为整型
edit1.Text :=InttoStr(shu1*shu2);
end;
if fuhao='/' then
begin
Shu22:=copy(Shu22,shu1changdu+,shu2changdu); //截取出第二个数
shu2:=StrtoInt(Shu22); //将字符串转变为整型
edit1.Text :=InttoStr(shu1 Div shu2);
end;
fuhao:='';
end; end.

初学delphi的更多相关文章

  1. 初学 Delphi 嵌入汇编[1] - 汇编语言与机器语言

    非科班出身, 现在才接触汇编, 惭愧呀, 好好学! 主选课本是清华大学王爽老师的<汇编语言>. 推荐 王爽老师的汇编网 汇编语言之前是机器语言. 机器语言是机器指令的集合, 机器指令是一系 ...

  2. Delphi的BPL介绍和使用 转

    了解BPL和DLL的关系将有助于我们更好地理解DELPHI在构件制作.运用和动态.静态编译的工作方式.对初学DELPHI但仍对DELPHI开发不甚清晰的朋友有一定帮助.BPL vs. DLL(原文ht ...

  3. Delphi在win7/vista下写注册表等需要管理员权限的解决方案

    看到论坛好多人问win7下写注册表的问题,我结合自己的理解写了一点东西,首先声明一下,本人初学Delphi,水平有限,大家见笑了,有什么不对之处请老鸟多指点. [背景]win7/Vista提供的UAC ...

  4. DELPHI的BPL使用

    了解BPL和DLL的关系将有助于我们更好地理解DELPHI在构件制作.运用和动态.静态编译的工作方式.对初学DELPHI但仍对DELPHI开发不甚清晰的朋友有一定帮助.第一部分:有关包的介绍 一般我们 ...

  5. 在DELPHI中动态创建控件以及控件的事件

    在DELPHI中我们经常要动态的创建控件以及控件的事件.例如,我们可能想根据程序需要动态的创建一些Tshape组件来创建某个图形,并使得在鼠标移动上去之后可以完成某些操作.这一般需要需要三步: 生成一 ...

  6. delphi7开发webservice部属在apache服务器中 转

    delphi7开发webservice部属在apache服务器中 delphi7 webservice apache 用Delphi7开发Web Service程序,并把服务程序放在apache We ...

  7. Qt: 记事本源代码

    界面编程之实例学习,系统记事本是个极好的参考,初学Delphi及后之c#,皆以记事本为参考,今以Qt学习,亦是如此. 期间搭建开发环境,复习c++知识,寻找模块对应功能,不一而足:现刻录其模块代码,以 ...

  8. Delphi初学者应小心的六大陷阱

    Delphi初学者应小心的六大陷阱   作者:子夜编译       初学DelphiI的人,由于各种原因,对DelphiI中的许多概念不能很好的理解,并由此带来了许多的问题,或者是开发出的程序稳性不好 ...

  9. 【Java二十周年】Delphi转行java的一些小感触

    本文纯属一届小码农对java使用过程的体验感触 目录: 初遇java编程语言 与java的擦肩 深入java 跨平台性 开源支持 web的支撑 初遇java编程语言 刚上大学的时候,完全是个电脑盲.刚 ...

随机推荐

  1. 001-RLE算法

    一.定义 RLE全称(run-length encoding),翻译为游程编码,又译行程长度编码,又称变动长度编码法(run coding),在控制论中对于二值图像而言是一种编码方法,对连续的黑.白像 ...

  2. Stylus的使用

    vue-cli项目安装使用stylus步骤:1. npm install stylus -D命令,在项目内安装stylus.(注意:命令结尾 -D 即是 --save-dev 的简写形式) 2.需要安 ...

  3. js将一位数组分割成每三个一组

    var data = [   {name:'Liming',age:'25'},   {name:'Liming',age:'25'},   {name:'Liming',age:'25'},   { ...

  4. [Java in NetBeans] Lesson 01. Java Programming Basics

    这个课程的参考视频在youtube. 主要学到的知识点有: Create new project, choose Java Application. one .jar file/ package(.j ...

  5. [LeetCode] 849. Maximize Distance to Closest Person_Easy tag: BFS

    In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...

  6. mac book docker

    mbp的某些方面还是挺有吸引力的啊 但工作中大多数用的还是纯linux而不是类unix的mac os,要在家里的mac os x 和linux之间转转弯,有时候想想还是挺别扭的. 为了从公司-> ...

  7. node.js之爬虫

    nodejs爬取数据出现编码错误的问题 可以使用 superagent-charset 和 superagent 模块进行处理 var charset = require('superagent-ch ...

  8. 原生js---ajax的封装插件.js---(对get和post做了兼容)

    function ajax(method,url,data,fn){ // 1.创建对象 var xhr=null; try{ xhr=new XMLHttpRequest(); }catch(e){ ...

  9. MyBatis基础入门《八》查询参数传入Map

    MyBatis基础入门<八>查询参数传入Map 描述: 在执行select查询数据的时候,方法传入的参数是java.util.Map类型. 接口方法: xml文件 注意: 书写SQL语句的 ...

  10. “编程利器”:VSCode

    原先一直使用sublime text3,并且认为它是很好的编程利器. 但最近写代码时,发现很多代码还是提示的不够完整.我们知道,当代码名字很长时,还没有提醒,这是非常苦恼的一件事!同时它的调试功能也不 ...