using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace WindowsFormsApplication5
{
public partial class Form1 : Form
{
double num1, num2, result;
bool decimalFlag=false;
string myOperator; public Form1()
{
InitializeComponent();
} private void textReadout_TextChanged(object sender, EventArgs e)
{
textReadout.Text = "0.";
textReadout.TextAlign = HorizontalAlignment.Right;
}
public void NumClick(int myNumber)
{
if (decimalFlag)
{
textReadout.Text = textReadout.Text + myNumber;
}
else
{
if (textReadout.Text == "0.")
{
textReadout.Text = myNumber + "."; }
else
{
textReadout.Text = textReadout.Text.Substring
(0, textReadout.Text.Length + 1) + myNumber + ".";
}
}
}
private void button10_Click(object sender, EventArgs e)
{
NumClick(0);
} private void button3_Click(object sender, EventArgs e)
{
NumClick(1);
} private void button8_Click(object sender, EventArgs e)
{
NumClick(2);
} private void button9_Click(object sender, EventArgs e)
{
NumClick(3);
} private void button2_Click(object sender, EventArgs e)
{
NumClick(4);
} private void button6_Click(object sender, EventArgs e)
{
NumClick(5);
} private void button7_Click(object sender, EventArgs e)
{
NumClick(6);
} private void button1_Click(object sender, EventArgs e)
{
NumClick(7);
} private void button4_Click(object sender, EventArgs e)
{
NumClick(8);
} private void button5_Click(object sender, EventArgs e)
{
NumClick(9);
}
private void button11_Click(object sender, EventArgs e)
{
decimalFlag = true;
} private void but_C_Click(object sender, EventArgs e)
{
num1 = 0;
num2 = 0;
textReadout.Text="0.";
decimalFlag=false;
} private void buttonAdd_Click(object sender, EventArgs e)
{
myOperator = "add";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonSub_Click(object sender, EventArgs e)
{
myOperator = "Sub";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonMul_Click(object sender, EventArgs e)
{
myOperator = "Mul";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonDiv_Click(object sender, EventArgs e)
{
myOperator = "Div";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void button12_Click(object sender, EventArgs e)
{
num2 = double.Parse(textReadout.Text);
switch (myOperator)
{
case"add":
result = num1 + num2;
textReadout.Text = result.ToString();
break;
case "Sub":
result = num1 - num2;
textReadout.Text = result.ToString();
break;
case "Mul":
result = num1 * num2;
textReadout.Text = result.ToString();
break;
case "Div":
if (num2 == 0)
{
textReadout.Text = "除数不能为“0”!";
}
else
{
result = num1 / num2;
textReadout.Text = result.ToString();
}
break;
}
} }
}C#
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace WindowsFormsApplication5
{
public partial class Form1 : Form
{
double num1, num2, result;
bool decimalFlag=false;
string myOperator; public Form1()
{
InitializeComponent();
} private void textReadout_TextChanged(object sender, EventArgs e)
{
textReadout.Text = "0.";
textReadout.TextAlign = HorizontalAlignment.Right;
}
public void NumClick(int myNumber)
{
if (decimalFlag)
{
textReadout.Text = textReadout.Text + myNumber;
}
else
{
if (textReadout.Text == "0.")
{
textReadout.Text = myNumber + "."; }
else
{
textReadout.Text = textReadout.Text.Substring
(0, textReadout.Text.Length + 1) + myNumber + ".";
}
}
}
private void button10_Click(object sender, EventArgs e)
{
NumClick(0);
} private void button3_Click(object sender, EventArgs e)
{
NumClick(1);
} private void button8_Click(object sender, EventArgs e)
{
NumClick(2);
} private void button9_Click(object sender, EventArgs e)
{
NumClick(3);
} private void button2_Click(object sender, EventArgs e)
{
NumClick(4);
} private void button6_Click(object sender, EventArgs e)
{
NumClick(5);
} private void button7_Click(object sender, EventArgs e)
{
NumClick(6);
} private void button1_Click(object sender, EventArgs e)
{
NumClick(7);
} private void button4_Click(object sender, EventArgs e)
{
NumClick(8);
} private void button5_Click(object sender, EventArgs e)
{
NumClick(9);
}
private void button11_Click(object sender, EventArgs e)
{
decimalFlag = true;
} private void but_C_Click(object sender, EventArgs e)
{
num1 = 0;
num2 = 0;
textReadout.Text="0.";
decimalFlag=false;
} private void buttonAdd_Click(object sender, EventArgs e)
{
myOperator = "add";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonSub_Click(object sender, EventArgs e)
{
myOperator = "Sub";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonMul_Click(object sender, EventArgs e)
{
myOperator = "Mul";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void buttonDiv_Click(object sender, EventArgs e)
{
myOperator = "Div";
num1 = double.Parse(textReadout.Text);
textReadout.Text = "0.";
decimalFlag = false;
} private void button12_Click(object sender, EventArgs e)
{
num2 = double.Parse(textReadout.Text);
switch (myOperator)
{
case"add":
result = num1 + num2;
textReadout.Text = result.ToString();
break;
case "Sub":
result = num1 - num2;
textReadout.Text = result.ToString();
break;
case "Mul":
result = num1 * num2;
textReadout.Text = result.ToString();
break;
case "Div":
if (num2 == 0)
{
textReadout.Text = "除数不能为“0”!";
}
else
{
result = num1 / num2;
textReadout.Text = result.ToString();
}
break;
}
} }
}C#
另外 不理解 对小数点的解释
text初始界面 为空,如何让他为“0.”
2.http://wenku.baidu.com/view/a40234db50e2524de5187e1b.html
3.FormLoad事件设置text.text=0
{
if (decimalFlag)
{
textReadout.Text = textReadout.Text + myNumber;
}
else
{
if (textReadout.Text == "0.")
{
textReadout.Text = myNumber + "."; }
else
{
textReadout.Text = textReadout.Text.Substring
(0, textReadout.Text.Length + 1) + myNumber + ".";
}
}
}
我copy的 不太能看懂 辛苦了 我初学
{
//textReadout.Text = "0.";
textReadout.TextAlign = HorizontalAlignment.Right;
} public void NumClick(int myNumber)
{
if (decimalFlag)
{
textReadout.Text = textReadout.Text + myNumber;
}
else
{
if (textReadout.Text == "0.")
{
textReadout.Text = myNumber + "."; }
else
{
//textReadout.Text = textReadout.Text.Substring(0, textReadout.Text.Length + 1) + myNumber + ".";
textReadout.Text = textReadout.Text.Substring(0, textReadout.Text.Length - 1) + myNumber + ".";
}
}
}
//把0-9的数字按钮绑到一个方法上面~
private void buttonNum_Click(object sender, EventArgs e)
{
var num = int.Parse((sender as Button).Text);
NumClick(num);
}把计算方法单独的封装一个出来 给予参与指定运算~
{
//textReadout.Text = "0.";
textReadout.TextAlign = HorizontalAlignment.Right;
}当textReadout控件的text值发生改变时引发的事件,所以必须注释那一行,否则textReadout.Text永远显示“0.”textReadout.Text = textReadout.Text.Substring(0, textReadout.Text.Length - 1) + myNumber + ".";中Substring(0, textReadout.Text.Length + 1)方法是获取字符串中比字符串长度少一个字符的字符串,例如“12.”则得到“12”;
{
//textReadout.Text = "0.";
textReadout.TextAlign = HorizontalAlignment.Right;
}当textReadout控件的text值发生改变时引发的事件,所以必须注释那一行,否则textReadout.Text永远显示“0.”textReadout.Text = textReadout.Text.Substring(0, textReadout.Text.Length - 1) + myNumber + ".";中Substring(0, textReadout.Text.Length + 1)方法是获取字符串中比字符串长度少一个字符的字符串,例如“12.”则得到“12”;
谢谢你,问题基本解决了,可是我想让text起始显示“0.”,怎么办呢?
谢谢你,问题基本解决了,可是我想让text起始显示“0.”,怎么办呢?
直接将textReadout控件的Text属性改为“0.”就行了