在线计算器
来源:互联网 发布:c语言经典算法大全pdf 编辑:程序博客网 时间:2024/04/24 04:55
WebForm1.aspx
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Calculator.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm1</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<STYLE type="text/css">TD { FONT: 10pt "宋体"; COLOR: #ffffff }
.Button { BORDER-TOP-WIDTH: 2px; BORDER-LEFT-WIDTH: 2px; BORDER-BOTTOM-WIDTH: 2px; MARGIN: 4px; FONT: 9pt "宋体"; WIDTH: 35px; COLOR: #0000ff; HEIGHT: 26px; BORDER-RIGHT-WIDTH: 2px }
.Button1 { BORDER-TOP-WIDTH: 2px; BORDER-LEFT-WIDTH: 2px; BORDER-BOTTOM-WIDTH: 2px; MARGIN: 4px; FONT: 9pt "宋体"; WIDTH: 35px; COLOR: #ff0000; HEIGHT: 26px; BORDER-RIGHT-WIDTH: 2px }
.text_input { BACKGROUND: #ffffff; FONT: 10pt "Verdana", "Arial", "Helvetica", "sans-serif"; WIDTH: 248px; COLOR: #000000; HEIGHT: 23px; TEXT-ALIGN: right }
A { FONT: 9pt "宋体"; COLOR: #ffffff; TEXT-DECORATION: none }
</STYLE>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<table cellSpacing="0" cellPadding="0" width="238" border="0">
<tr>
<td align="center" colSpan="6"><asp:textbox id="txtNum" Runat="server" text="0" CssClass="text_input"></asp:textbox></td>
</tr>
<tr>
<td><asp:button id="btnSeven" Runat="server" CssClass="Button" Text="7"></asp:button></td>
<td><asp:button id="btnEight" Runat="server" CssClass="Button" Text="8"></asp:button></td>
<td><asp:button id="btnNine" Runat="server" CssClass="Button" Text="9"></asp:button></td>
<td><asp:button id="btnDivide" Runat="server" CssClass="Button1" Text="/"></asp:button></td>
<td><asp:button id="btnCE" Runat="server" CssClass="Button1" Text="CE"></asp:button></td>
</tr>
<tr>
<td><asp:button id="btnFour" Runat="server" CssClass="Button" Text="4"></asp:button></td>
<td><asp:button id="btnFive" Runat="server" CssClass="Button" Text="5"></asp:button></td>
<td><asp:button id="btnSix" Runat="server" CssClass="Button" Text="6"></asp:button></td>
<td><asp:button id="btnMultiply" Runat="server" CssClass="Button1" Text="*"></asp:button></td>
<td><asp:button id="btnClear" Runat="server" CssClass="Button1" Text="C"></asp:button></td>
</tr>
<tr>
<td><asp:button id="btnOne" Runat="server" CssClass="Button" Text="1"></asp:button></td>
<td><asp:button id="btnTwo" Runat="server" CssClass="Button" Text="2"></asp:button></td>
<td><asp:button id="btnThree" Runat="server" CssClass="Button" Text="3"></asp:button></td>
<td><asp:button id="btnAdd" Runat="server" CssClass="Button1" Text="+"></asp:button></td>
<td><asp:button id="btnClose" Runat="server" CssClass="Button1" Text="OFF"></asp:button></td>
</tr>
<tr>
<td><asp:button id="btnZero" Runat="server" CssClass="Button" Text="0"></asp:button></td>
<td><asp:button id="btnNeg" Runat="server" CssClass="Button" Text="+/-"></asp:button></td>
<td><asp:button id="btnDecimal" Runat="server" CssClass="Button" Text="."></asp:button></td>
<td><asp:button id="btnMinus" Runat="server" CssClass="Button1" Text="-"></asp:button></td>
<td><asp:button id="btnEquals" Runat="server" CssClass="Button1" Text="="></asp:button></td>
</tr>
</table>
</form>
</body>
</HTML>
WebForm1.asp.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace Calculator
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button btnSeven;
protected System.Web.UI.WebControls.Button btnEight;
protected System.Web.UI.WebControls.Button btnNine;
protected System.Web.UI.WebControls.Button btnDivide;
protected System.Web.UI.WebControls.Button btnCE;
protected System.Web.UI.WebControls.Button btnFour;
protected System.Web.UI.WebControls.Button btnFive;
protected System.Web.UI.WebControls.Button btnSix;
protected System.Web.UI.WebControls.Button btnMultiply;
protected System.Web.UI.WebControls.Button btnClear;
protected System.Web.UI.WebControls.Button btnOne;
protected System.Web.UI.WebControls.Button btnTwo;
protected System.Web.UI.WebControls.Button btnThree;
protected System.Web.UI.WebControls.Button btnAdd;
protected System.Web.UI.WebControls.Button btnClose;
protected System.Web.UI.WebControls.Button btnZero;
protected System.Web.UI.WebControls.Button btnNeg;
protected System.Web.UI.WebControls.Button btnDecimal;
protected System.Web.UI.WebControls.Button btnMinus;
protected System.Web.UI.WebControls.Button btnEquals;
protected System.Web.UI.WebControls.TextBox txtNum;
Calculator MyCalculator = new Calculator();
private string strShowText;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (Page.IsPostBack)
{
if (txtNum.Text != "0")
{
strShowText = txtNum.Text;
}
if (Calculator.NewNum)
{
strShowText = "";
}
}
Calculator.NewNum = false;
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.btnSeven.Click += new System.EventHandler(this.btnSeven_Click);
this.btnEight.Click += new System.EventHandler(this.btnEight_Click);
this.btnNine.Click += new System.EventHandler(this.btnNine_Click);
this.btnDivide.Click += new System.EventHandler(this.btnDivide_Click);
this.btnCE.Click += new System.EventHandler(this.btnCE_Click);
this.btnFour.Click += new System.EventHandler(this.btnFour_Click);
this.btnFive.Click += new System.EventHandler(this.btnFive_Click);
this.btnSix.Click += new System.EventHandler(this.btnSix_Click);
this.btnMultiply.Click += new System.EventHandler(this.btnMultiply_Click);
this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
this.btnOne.Click += new System.EventHandler(this.btnOne_Click);
this.btnTwo.Click += new System.EventHandler(this.btnTwo_Click);
this.btnThree.Click += new System.EventHandler(this.btnThree_Click);
this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
this.btnZero.Click += new System.EventHandler(this.btnZero_Click);
this.btnNeg.Click += new System.EventHandler(this.btnNeg_Click);
this.btnDecimal.Click += new System.EventHandler(this.btnDecimal_Click);
this.btnMinus.Click += new System.EventHandler(this.btnMinus_Click);
this.btnEquals.Click += new System.EventHandler(this.btnEquals_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void btnSeven_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(7,ref strShowText);
txtNum.Text = strShowText;
}
private void btnEight_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(8,ref strShowText);
txtNum.Text = strShowText;
}
private void btnNine_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(9,ref strShowText);
txtNum.Text = strShowText;
}
private void btnFour_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(4,ref strShowText);
txtNum.Text = strShowText;
}
private void btnFive_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(5,ref strShowText);
txtNum.Text = strShowText;
}
private void btnSix_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(6,ref strShowText);
txtNum.Text = strShowText;
}
private void btnOne_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(1,ref strShowText);
txtNum.Text = strShowText;
}
private void btnTwo_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(2,ref strShowText);
txtNum.Text = strShowText;
}
private void btnThree_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(3,ref strShowText);
txtNum.Text = strShowText;
}
private void btnZero_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(0,ref strShowText);
txtNum.Text = strShowText;
}
private void btnDecimal_Click(object sender, System.EventArgs e)
{
MyCalculator.CalculatorNum(".",ref strShowText);
txtNum.Text = strShowText;
}
private void btnClear_Click(object sender, System.EventArgs e)
{
MyCalculator.Clear(ref strShowText);
txtNum.Text = strShowText;
}
private void btnNeg_Click(object sender, System.EventArgs e)
{
MyCalculator.Sign(ref strShowText);
txtNum.Text = strShowText;
}
private void btnAdd_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Add";
Calculator.FirstNum = Convert.ToDouble(strShowText);
}
private void btnEquals_Click(object sender, System.EventArgs e)
{
Calculator.SecondNum = Convert.ToDouble(strShowText);
switch (Calculator.Operation)
{
case "Add":
txtNum.Text = MyCalculator.Add().ToString();
break;
case "Minus":
txtNum.Text = MyCalculator.Minus().ToString();
break;
case "Multiply":
txtNum.Text = MyCalculator.Multiply().ToString();
break;
case "Divide":
txtNum.Text = MyCalculator.Divide().ToString();
break;
}
}
private void btnMinus_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Minus";
Calculator.FirstNum = Convert.ToDouble(strShowText);
}
private void btnMultiply_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Multiply";
Calculator.FirstNum = Convert.ToDouble(strShowText);
}
private void btnDivide_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Divide";
Calculator.FirstNum = Convert.ToDouble(strShowText);
}
private void btnHex_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Hex";
Calculator.FirstNum = Convert.ToDouble(strShowText);
txtNum.Text = MyCalculator.HexChange();
}
private void btnOct_Click(object sender, System.EventArgs e)
{
Calculator.NewNum = true;
Calculator.Operation = "Hex";
Calculator.FirstNum = Convert.ToDouble(strShowText);
txtNum.Text = MyCalculator.OctChange();
}
private void btnCE_Click(object sender, System.EventArgs e)
{
MyCalculator.Clear(ref strShowText);
txtNum.Text = strShowText;
}
}
public class Calculator
{
private double dblSign;
private static double dblFirstNum;
private static double dblSecondNum;
private static double dblResult;
private static string strResult;
private static string strOperation;
private static bool IsNewNum;
public void CalculatorNum(double num,ref string strnum)
{
if (IsNewNum)
{
strnum = num.ToString();
}
else
{
strnum += num.ToString();
}
}
public static string Operation
{
set
{
strOperation = value;
}
get
{
return strOperation;
}
}
public static bool NewNum
{
set
{
IsNewNum = value;
}
get
{
return IsNewNum;
}
}
public void CalculatorNum(string dot,ref string strnum)
{
if (strnum != null)
{
strnum += dot;
}
else
{
strnum = "0.";
}
}
public static double FirstNum
{
set
{
dblFirstNum = value;
}
}
public static double SecondNum
{
set
{
dblSecondNum = value;
}
}
public double Add()
{
dblResult = dblFirstNum + dblSecondNum;
return dblResult;
}
public double Minus()
{
dblResult = dblFirstNum - dblSecondNum;
return dblResult;
}
public double Multiply()
{
dblResult = dblFirstNum * dblSecondNum;
return dblResult;
}
public double Divide()
{
if (dblSecondNum != 0)
{
dblResult = dblFirstNum / dblSecondNum;
}
else
{
dblResult = 0;
}
return dblResult;
}
public string HexChange()
{
int intNum;
intNum = (int)dblFirstNum;
strResult = intNum.ToString("X4");
return strResult;
}
public string OctChange()
{
int intNum;
intNum = (int)dblFirstNum;
strResult = intNum.ToString();
return strResult;
}
public void Clear(ref string strnum)
{
strnum = "0";
}
public void Sign(ref string strnum)
{
dblSign = Convert.ToDouble(strnum);
dblSign *= -1;
strnum = dblSign.ToString();
}
}
}
- 在线计算器
- qq在线时间计算器
- 普通计算器在线使用
- 简单的在线计算器
- 各种在线计算器
- CRC 在线计算器
- 数学排列组合,阶乘在线计算器
- RC滤波器截止频率在线计算器
- eCalc:最棒的在线计算器
- 在线数列计算器【公务员考试之宝】
- R-C滤波器截止频率在线计算器
- 在线一元二次方程式计算器 源码
- 在线计算器源码(HTML+CSS+jQuery)
- jsp+servlet实现在线简易计算器
- 在线简易计算器源码[html+css+js]
- (JS+HTML)简单的在线计算器(送给初学者们)
- 巨牛B的在线数学工具:反符号计算器
- 基于HTTP和大数运算的在线计算器
- 我的最后叹息zz(转载)
- 参观广州大学城
- Fedora Core3 Gnome 问题求组!!!!~~~~~~~~~~~~~~~~~~~~~~~~~~
- 技术人员的明天:35岁后我们做什么
- 庆祝开通
- 在线计算器
- 韩国网站
- DataReader & DataSet
- 读《Microsoft .NET编程语言C#教程》
- 2005年3月16日 晴
- 1层,2层,3层? [转自XFocus 作者:code_tin]
- 肯德基也会出这档子事?
- TCP/IP.真实世界的模型 [转自XFocus 作者:code_tin]
- 赐教,如何在Winform中自定义圆形质感button、不规则lable?