unit Unit1;

 interface

 uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, bsSkinData, BusinessSkinForm, Mask, bsSkinBoxCtrls, bscalc,
bsSkinCtrls; type
TForm1 = class(TForm)
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;
Button18: TButton;
Button19: TButton;
Button20: TButton;
Button21: TButton;
Button22: TButton;
bsBusinessSkinForm1: TbsBusinessSkinForm;
bsSkinData1: TbsSkinData;
Edit1: TbsSkinEdit;
bsCompressedStoredSkin1: TbsCompressedStoredSkin;
Edit2: TbsSkinEdit;
Edit3: TbsSkinEdit;
Edit4: TbsSkinEdit;
Label1: TLabel;
Button1: TButton;
Button23: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(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);
procedure Edit1Change(Sender: TObject);
procedure Edit3Change(Sender: TObject);
procedure Edit1Enter(Sender: TObject);
procedure Edit3Enter(Sender: TObject);
procedure Button17Click(Sender: TObject);
procedure Button18Click(Sender: TObject);
procedure Button19Click(Sender: TObject);
procedure Button20Click(Sender: TObject);
procedure Button21Click(Sender: TObject);
procedure Button22Click(Sender: TObject);
procedure bsSkinButton1Click(Sender: TObject);
procedure Button23Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations } end; var
Form1: TForm1;
str1:String;
str2:String;
int1:real;
int2:real;
bo:real;
result:real;
implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);
begin if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end end; procedure TForm1.FormCreate(Sender: TObject);
begin int1:=;
int2:=;
bo:=;
SetWindowLong(Edit1.Handle,GWL_STYLE,GetWindowLong(Edit1.Handle,GWL_STYLE) or Es_right);
SetWindowLong(Edit2.Handle,GWL_STYLE,GetWindowLong(Edit2.Handle,GWL_STYLE) or Es_right);
SetWindowLong(Edit3.Handle,GWL_STYLE,GetWindowLong(Edit3.Handle,GWL_STYLE) or Es_right);
SetWindowLong(Edit4.Handle,GWL_STYLE,GetWindowLong(Edit4.Handle,GWL_STYLE) or Es_right);
end; procedure TForm1.Button20Click(Sender: TObject);
begin
edit2.Text:='';
edit3.Text:='';
int2:=;
edit4.Text:= FormatFloat('0.00000',/int1) ;
end; procedure TForm1.Button21Click(Sender: TObject);
begin
edit2.Text:='';
edit3.Text:='';
int2:=;
edit4.Text:= FormatFloat('0.00000',Sqrt(int1)) ;
end; procedure TForm1.Button22Click(Sender: TObject);
begin
result:=int1*int2/;
Edit4.Text:=FormatFloat('0.00000',result);
end; procedure TForm1.Button23Click(Sender: TObject);
begin
if bo= then
edit1.Text:=''
else
edit3.Text:=''; end; procedure TForm1.Button2Click(Sender: TObject); begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button3Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button4Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button5Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button6Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button7Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button8Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button9Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Edit1Change(Sender: TObject);
begin
str1:=edit1.Text;
if edit1.Text<>'' then
int1:=strtofloat(edit1.Text)
else
int1:=; end; procedure TForm1.Edit1Enter(Sender: TObject);
begin
bo:=;
end; procedure TForm1.Edit3Change(Sender: TObject);
begin
str2:=edit3.Text;
if edit3.Text<>'' then
int2:=strtofloat(edit3.Text)
else
int2:=; end; procedure TForm1.Edit3Enter(Sender: TObject);
begin
bo:=;
end; procedure TForm1.bsSkinButton1Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button10Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'';
Edit3.Text:=str2;
end
end; procedure TForm1.Button11Click(Sender: TObject);
begin
bo:=;
Edit2.Text:='+';
end; procedure TForm1.Button12Click(Sender: TObject);
begin
bo:=;
Edit2.Text:='-';
end; procedure TForm1.Button13Click(Sender: TObject);
begin
bo:=;
Edit2.Text:='*';
end; procedure TForm1.Button14Click(Sender: TObject);
begin
bo:=;
Edit2.Text:='/';
end; procedure TForm1.Button15Click(Sender: TObject);
begin if Edit2.Text='+' then
begin
result:=int1+int2;
Edit4.Text:=floattostr(result);
end ; if Edit2.Text='-' then
begin
result:=int1-int2;
Edit4.Text:=floattostr(result);
end ;
if Edit2.Text='*' then
begin
result:=int1*int2;
Edit4.Text:=floattostr(result);
end ;
if ( Edit2.Text='/') and (int2<> ) then
begin
result:=int1/int2;
{保留5位小数}
Edit4.Text:=FormatFloat('0.00000',result);
end ; if ( Edit2.Text='/') and (int2= ) then
begin
Application.MessageBox('除数不能为0!','错误提示',MB_OKCANCEL);
end ; end; procedure TForm1.Button16Click(Sender: TObject);
begin bo:=;
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
Edit4.Text:='';
int1:=;
int2:=;
result:=;
end; procedure TForm1.Button17Click(Sender: TObject);
begin
if bo= then
edit1.Text:= Copy( edit1.Text, , length( Edit1.text )- ) {截取}
else
edit3.Text:= Copy( edit3.Text, , length( Edit3.text )- ); end; procedure TForm1.Button18Click(Sender: TObject);
begin
if bo= then
begin
str1:=str1+'.';
Edit1.Text:=str1;
end
Else
begin
str2:=str2+'.';
Edit3.Text:=str2;
end
end; procedure TForm1.Button19Click(Sender: TObject);
begin
if bo= then
begin
if int1> then
edit1.Text:='-'+edit1.Text
else
begin
int1:=-strtofloat(edit1.Text);
edit1.Text:=floattostr(int1) ;
end; end else
begin
if int2> then
edit3.Text:='-'+edit3.Text
else
begin
int2:=-strtofloat(edit3.Text);
edit3.Text:=floattostr(int2) ;
end;
end;
end; end.

计算器(delphi)的更多相关文章

  1. Delphi 调用系统中的计算器、记事本、画图软件方法

    1.直接调用    前面uses加 ShellAPI ShellExecute(Handle, 'open', PChar('calc.exe'), nil, nil, SW_SHOW); 2.直接调 ...

  2. delphi 发送Windwos消息控制按钮(控制计算器里的某一个按钮)

    procedure TfrmMain.btnSendClick(Sender: TObject); var hCalc, h1: Cardinal; begin WinExec('calc', SW_ ...

  3. delphi.位操作

    位操作网上有很多介绍,请上网google/baidu,比如: 位操作技巧实例大全: http://blog.csdn.net/g_spider/article/details/5750665 位操作基 ...

  4. 在Delphi中如何控制其它应用程序窗口

    在编写Delphi的应用程序中,常常涉及对其它Windows应用程序的操作.例如,在数据库的管理系统中,财务人员需要使用计算器,即可调用Windows内含的计算器功能,若每次使用,均通过“开始/程序/ ...

  5. delphi 资源文件详解

    delphi资源文件详解 一.引子: 现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便 ...

  6. delphi xe5 android 关于文件大小的几个问答O(∩_∩)O~

    摘自:http://blogs.embarcadero.com/vsevolodleonov/2013/09/19/are-you-asking-about-app-size-by-delphi-fo ...

  7. delphi定义自己的消息

    定义一个消息需要两个步骤: 1.声明一个消息标识符 2.声明一个消息记录类型 一个消息标识符是一个整数大小的常数.Windows自用低于1024的消息,所以当你声明你自己的消息,你应该开始高于这一数字 ...

  8. 初学delphi

    今天女朋友的一门课,要求用delphi 软件编程,内容是一个计算器.当然,这个工作肯定是落在我的头上了. 这个软件是我第一次使用,边自学边进行代码编写,在n多次修改完善之后,终于成形.功能不是很多,跟 ...

  9. Delphi应用程序的调试(五)其他调试工具

    Delphi应用程序的调试(五)其他调试工具 Delphi7中提供了一些附加调试工具来帮助用户检查程序错误.从性能上讲,其中一些工具属于高级调试工具.尽管高级调试工具不像其他工具那样常用,但对于经验丰 ...

随机推荐

  1. vs2010 调试C++程序 快捷键

    命令名 快捷键 说明 调试.应用代码更改 Alt + F10 启动生成操作,利用它可以通过“编辑并继续”功能应用对正在调试的代码所作的更改. 调试.自动窗口 Ctrl + D,Ctrl + A 显示“ ...

  2. 查看Oracle执行计划的几种方法

    查看Oracle执行计划的几种方法 一.通过PL/SQL Dev工具 1.直接File->New->Explain Plan Window,在窗口中执行sql可以查看计划结果.其中,Cos ...

  3. java调用.net asmx服务

    有时候,在java下开发会调用一下.net下写的服务,看网上有各种方法,但总是不成功,总结下自己测试过能调用成功的方式: 1. 原始方式http-soap public static String p ...

  4. 给jdk写注释系列之jdk1.6容器(6)-HashSet源码解析&Map迭代器

    今天的主角是HashSet,Set是什么东东,当然也是一种java容器了.      现在再看到Hash心底里有没有会心一笑呢,这里不再赘述hash的概念原理等一大堆东西了(不懂得需要先回去看下Has ...

  5. linux nginx启动 重启 关闭命令

    启动操作 nginx -c /usr/local/nginx/conf/nginx.conf -c参数指定了要加载的nginx配置文件路径 停止操作停止操作是通过向nginx进程发送信号来进行的 步骤 ...

  6. JS中的嵌套作用域

    在JS中仅仅区分全局变量和局部变量还不够,实际上,变量作用域可以有任意层级(嵌套).其他函数内部定义的函数可以调用父函数的局部变量,而内部函数里定义的函数则不仅可以调用父函数的局部变量,还可以调用祖父 ...

  7. Redis 命令 - Server

    BGREWRITEAOF Asynchronously rewrite the append-only file BGSAVE Asynchronously save the dataset to d ...

  8. Android Support v4,v7,v13

    Android Support v4 是最早(2011年4月份)实现的库.用在Android1.6 (API lever 4)或者更高版本之上.它包含了相对V4, V13大的多的功能. 例如:Frag ...

  9. Android adb常见问题整理(转)

    原文地址:http://blog.csdn.net/androiddevelop/article/details/8130416 以下都是ADB连接问题,可以通过尝试如下步骤,由简单度排序 1. 插拔 ...

  10. android之回调函数的意义

    本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/17483273) 看完这篇文后大家可以看看这个http://blog. ...