web加减乘除法c#_C# 简易计算器(实现了 加减乘除等基本计算方法)

本文介绍了一个使用C#实现的简易计算器,它支持加、减、乘、除四则运算。通过核心代码展示如何处理数字输入、运算符选择及计算结果的显示。用户界面包括清零、等于、关闭和删除键,以及数字和运算符按钮。
摘要由CSDN通过智能技术生成

【实例简介】

四则运算

【实例截图】

【核心代码】

private void LoadComponent()

{

eOperator = EOperator.NONE;

splitIndex = 0;

textBoxShow = (TextBox)LogicalTreeHelper.FindLogicalNode(dependencyObject, "textBox");

// 功能按键

btnClear = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "btnClear");

btnClear.Click = OnButtonClearClick;

btnEqual = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "btnEqual");

btnEqual.Click = OnButtonEqualClick;

btnOff = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "btnOff");

btnOff.Click = OnButtonOffClick;

btnDelete = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "btnDelete");

btnDelete.Click = OnButtonDeleteClick;

// 运算按键

arrayBtnOperator = new Button[4];

for (int i = 0; i < 4; i)

{

arrayBtnOperator[i] = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "operator" i.ToString());

arrayBtnOperator[i].Click = OnButtonOperatorClick;

}

// 数字按键

arrayBtnNumber = new Button[10];

for (int i=0; i<=9; i)

{

arrayBtnNumber[i] = (Button)LogicalTreeHelper.FindLogicalNode(dependencyObject, "number" i.ToString());

arrayBtnNumber[i].Click = OnButtonNumberClick;

}

}

private void InitializeComponent()

{

设置窗体

//this.Width = 480;

//this.Height = 320;

//this.Left = this.Top = 100;

//this.Title = "Code-Only Window";

创建停靠面板对象

//DockPanel dockPanel = new DockPanel();

创建按钮对象

//button = new Button();

//button.Content = "Start";

//button.Margin = new Thickness(50);

//button.Click = ButtonClick;

//MediaElement mediaElement = new MediaElement();

//System.Uri uri = new System.Uri("F:/音乐/蔡依林&&周杰伦 - 布拉格广场.mp3");

//mediaElement.Source = uri;

//mediaElement.Stretch = System.Windows.Media.Stretch.Fill;

//IAddChild container = dockPanel;

//container.AddChild(button);

container.AddChild(mediaElement);

//container = this;

//container.AddChild(dockPanel);

}

private void OnButtonNumberClick(object sender, RoutedEventArgs e)

{

Button btn = (Button)sender;

textBoxShow.Text = btn.Content.ToString();

}

private void OnButtonClearClick(object sender, RoutedEventArgs e)

{

textBoxShow.Text = "";

}

private void OnButtonOperatorClick(object sender, RoutedEventArgs e)

{

if (eOperator != EOperator.NONE)

{

OnButtonEqualClick(null, null);

}

Button btn = (Button)sender;

if (textBoxShow.Text.Length == 0)

{

textBoxShow.Text = "0";

}

textBoxShow.Text = btn.Content.ToString();

splitIndex = textBoxShow.Text.Length - 1;

switch(btn.Content.ToString())

{

case " ":

eOperator = EOperator.ADD;

break;

case "-":

eOperator = EOperator.SUB;

break;

case "*":

eOperator = EOperator.MUL;

break;

case "/":

eOperator = EOperator.DIV;

break;

}

}

private void OnButtonEqualClick(object sender, RoutedEventArgs e)

{

if (eOperator == EOperator.NONE)

return;

if (splitIndex == textBoxShow.Text.Length - 1)

{

textBoxShow.Text = "0";

}

Operation operation = OperationFactory.CreateOperation(eOperator);

string strA = textBoxShow.Text.Substring(0, splitIndex);

string strB = textBoxShow.Text.Substring(splitIndex 1);

if (strA == "" || strB == "")

{

return;

}

operation.NumberA = Convert.ToDouble(strA);

operation.NumberB = Convert.ToDouble(strB);

textBoxShow.Text = operation.GetResult().ToString();

eOperator = EOperator.NONE;

}

private void OnButtonOffClick(object sender, RoutedEventArgs e)

{

Application.Current.Shutdown();

}

private void OnButtonDeleteClick(object sender, RoutedEventArgs e)

{

if (textBoxShow.Text.Length > 0)

{

textBoxShow.Text = textBoxShow.Text.Substring(0, textBoxShow.Text.Length-1);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值