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. MSSQL系统表常用操作

    1:获取当前数据库中的所有用户表 select Name from sysobjects where xtype='u' and status>=0 2:获取某一个表的所有字段 select n ...

  2. 以前写过的一些oracle语句

    这下以后用起来就方便了.可算是找到了 Orcl 数据库服务 启动项: OracleDBConsoleorcl OracleOraDb10g_home1iSQL*Plus OracleOraDb10g_ ...

  3. 为MYPoint类写一个分类

    #import <Foundation/Foundation.h> //xieyi @protocol showOn @required -(void)printOn; @end // l ...

  4. ES各种错误解决

    _update API 执行报错 错误信息: { "error": { "root_cause": [ { "type": "re ...

  5. [转]Install Windows Server 2012 in VMware Workstation

    本文转自:http://kb4you.wordpress.com/2012/06/28/install-windows-server-2012-in-vmware-workstation-2/ Thi ...

  6. WampServer下修改和重置MySQL密码(转)

    转自:www.2cto.com/database/201504/387589.html WampServer安装后密码是空的, 修改一般有两种方式: 一是通过phpMyAdmin直接修改: 二是使用W ...

  7. DataTables手动带参数提交至服务器

    一:参数传递及接收 JavaScript: 黄背景部分为参数传递关键 <script type="text/javascript"> var table; var de ...

  8. PHP,单双引号的区别‘“”“”’

    一.转义 单引号:只转义\'和\\,其他不转义 双引号:都转义 二.变量解析 单引号:无法解析变量(原样输出) 双引号:可以解析变量 三.速度 单引号:更快 双引号:要分析是否有变量,转义内容更多 结 ...

  9. arguments的用法

    arguments 对象 在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们. 例如,在函数 sayHi() 中,第一个参数是 message.用 argument ...

  10. framework7学习笔记

    最近因项目需要学习framework7,简称F7.对于自己遇到的问题和学习到的东西做个简单记录. 问题:刚开始获取json,页面上一直不显示,不得其法,原来是json文件需要在弹出层打开之后在来加载, ...