我在我的计算器程序里面是这样做的。首先定义一个变量的,这个变量用来记录小数点是否被按下过。如果没有被按下过,就在字符串后面追加小数点,如果已经按下过了,就不再追加了,整个标志位在运算符按钮处理函数里面进行清零的或复位的。这样就保证你在按下运算符之后还可以继续添加小数点的。。
先看看图片
说明以上控件动态生成的,初学可自己拖放控件,以下代码仅供参考
/*设计一个简单的四则计算器*/
string[] 名称 = { "+", "-", "*", "/" }
Button[] 控件组 = Array.ConvertAll(名称, 控件 =>new Button())
EventHandler[] 按钮事件 = new EventHandler[] { 按钮加_Click, 按钮减_Click, 按钮乘_Click, 按钮除_Click }
foreach (Button 按钮 in 控件组)
{
按钮.Text = 名称[--数]
按钮.Name = "按钮" + 数.ToString()
按钮.Parent = this
按钮.Anchor = (AnchorStyles.Top | AnchorStyles.Left)
按钮.Location = new Point(100 * 数, 17)
按钮.Click += 按钮事件[数]
}
名称 = new string[] { "值1", "值2", "结果" }
TextBox[] 数字输入框 = Array.ConvertAll(名称, 控件 =>new TextBox())
数 = 3
foreach (TextBox 输入框 in 数字输入框)
{
输入框.Text = (--数 + 10).ToString()
输入框.Name = "输入框" + 名称[数]
输入框.Parent = this
输入框.Anchor = (AnchorStyles.Top | AnchorStyles.Left)
输入框.Location = new Point(100 * 数, 0)
}
void 按钮加_Click(object sender, EventArgs e)
{
四则运算("+")
}
void 按钮减_Click(object sender, EventArgs e)
{
四则运算("-")
}
void 按钮乘_Click(object sender, EventArgs e)
{
四则运算("*")
}
void 按钮除_Click(object sender, EventArgs e)
{
四则运算("/")
}
void 四则运算(string 运算符)
{
Control.ControlCollection 文本框 = this.Controls
double 值1 = int.Parse(文本框[9].Text), 值2 = int.Parse(文本框[8].Text)
switch(运算符)
{
case "+":
{ 文本框[7].Text = (值1 + 值2).ToString()}
break
case "-":
{ 文本框[7].Text = (值1 - 值2).ToString()}
break
case "*":
{ 文本框[7].Text = (值1 * 值2).ToString()}
break
case "/":
{ 文本框[7].Text = (值1 / 值2).ToString()}
break
default:
break
}
}
1、首先打开VS2013,新建一个VC++ MFC项目,命名为 gongzi。
2、然后在程序类型中,选择“基于对话框”,点击“完成”按钮。
3、然后在d出的对话框中,删除原先的Static Text,添加相应的控件到窗体上。
4、接着在应发工资编辑框右击添加变量。 变量名称是 m_editTotal, 变量类型是 double, 类别为 value,点击“完成”。同样扣税费用编辑框右击添加变量。 变量名称是 m_editTax, 变量类型是 double, 类别为 value,应扣税款标签右击添加变量。
5、然后双击“计算应扣税款”进入代码,添加代码。
6、最后点击运行,输入对应的数目,按下按钮,查看执行效果。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)