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);

}

}

以下是一个简单的示例代码: ```python import tkinter as tk class Calculator(tk.Frame): def __init__(self, master=None): super().__init__(master) self.master = master self.create_widgets() def create_widgets(self): self.num1_entry = tk.Entry(self.master) self.num1_entry.pack(side="left") self.operation_label = tk.Label(self.master, text="+") self.operation_label.pack(side="left") self.num2_entry = tk.Entry(self.master) self.num2_entry.pack(side="left") self.calculate_button = tk.Button(self.master, text="=", command=self.calculate) self.calculate_button.pack(side="left") self.result_label = tk.Label(self.master, text="") self.result_label.pack(side="left") def calculate(self): num1 = int(self.num1_entry.get()) num2 = int(self.num2_entry.get()) if self.operation_label["text"] == "+": result = num1 + num2 elif self.operation_label["text"] == "-": result = num1 - num2 elif self.operation_label["text"] == "*": result = num1 * num2 elif self.operation_label["text"] == "/": result = num1 / num2 self.result_label["text"] = str(result) root = tk.Tk() calculator = Calculator(master=root) calculator.pack() root.mainloop() ``` 在这个示例中,我们创建了一个Calculator类,它继承自tkinter的Frame类。我们在create_widgets方中创建了四个控件:两个Entry控件用于输入两个整数,一个Label控件用于显示运算符,一个Button控件用于执行计算,一个Label控件用于显示结果。 在calculate方中,我们首先获取两个Entry控件中的整数值,然后根据运算符执行相应的计算。最后,我们将结果转换为字符串并显示在结果Label控件中。 您可以根据需要修改这个示例代码来实现更复杂的计算器功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值