c#编写计算器如何实现计算出结果后,不清除屏幕继续输入的数字,新的数字是直接自动清除屏幕后输出

如题所述

上一次计算完成之后,可以用一个标志位(一个 bool 变量) 表示 是否已经完成了一个计算,
“计算出结果后”,这个 bool 赋值为 ture,输入新的数字时,判断如果标志位 为 true,就先清屏,然后显示输入的数字,并且这时把 bool 值 赋值为 false;按下 等于 键,计算出结果后,bool 值赋值为 true。追问

谢谢,这个问题昨天已经解决了,请问如何实现连续多次按下button实现只响应一次的操作

比多次按+号,只响应第一次的结果

追答

这个只能自己写代码过滤,比如设置标志位,发现标志位不符合要求,就不进行任何操作。
C# 本身不行,按一次按钮,相应的响应函数就会执行一次,肯定的。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-27
说的不清不楚。追问

如何判断输入完成,假如输入2,输入+再输入3,这时候再输入+号,屏幕自动显示结果

追答

在最后自己输入一个 = 号啊。
判断是 = 号就输入完成,进行计算

追问

想要实现连加的操作

追答

不管是连加、连减,你只要在最后弄个 = 号 来判断就行了。

追问

屏幕不能输入符号

追答

ni 是什么类型的项目?那你之前又是怎么输入+号的

追问

winfom

追答

winform的文本框可以输符号的啊,
把你的项目界面截下图,不是很明白你想完成什么样的功能。
另外winform做计算器,那应该是模拟Windows系统自带的计算器。有按钮。

追问

追答

你跟着系统计算器来。弄两个textBox,上面的是运算式,下面是结果栏。

比如叫做text1,text2
你就判断当点击到运算符时,
:拿到text1里的最后一个数值 来和text2的值 进行计算。结果再赋给text2.

追问

我想做最简单的那种计算器,单行显示,

不知道如何判断输入完成,假如输入2,输入+再输入3,这时候再输入+号,屏幕自动显示结果

追答

问题是不知道你会有多少个+啊,所以我开始就让你输入 = 号。
像你这样的话,需要用timer来随时监测textBox的内容,当监测到包含 =号 时就执行运算。

追问

可是这个是计算器的最基本的功能啊

追答

你都说了要连加

追问

输入2,输入+再输入3,这时候再输入+号,屏幕显示5你信不

追答

。。。。。那你直接判断 +号不就行了,在这问半天。

追问

不好显示,因为textbox默认string类型,如果不清空屏幕第二次输入的数会接在第一次的字符串后面,如果清空,又显示不了结果

追答

你把每次的计算结果都赋给textBox。

追问

第一次输入3,第二次输入5,texbox会显示35

追答

哦,那是你没转换啊,没转换直接 + ,那就变成字符串 拼接了。
先转换为int或float类型再计算。
int.Parse(s);//把s转换为int

追问

计算完的结果是要转回string类型才能赋值给textbox的,那么问题来了,textbox接下来输入的数字会连接到字符串尾,懂我的意思了吗

追答

运算式子,那最后的数连接到字符串尾不是很合理吗,否则你都不知道要加的什么数。
因为输入数之前要先输 运算符的,所以也不会和之前的数值串联起来

追问

你还是没懂我的意思,建议你自己做一个计算器试试,只做a+b=c很简单,要实现a+b+输出c比较麻烦

追答

确实不知道你想怎么样。。。我睡觉了。

追问

那个问题我已经用开关解决了,你能告诉我怎么让连续多次按+号只响应一次吗

追答

设个bool值,如果已执行运算了就为true。
然后点击+号时,判断这个bool的值 当它为true时就不再执行计算了。

第2个回答  2016-11-14
这个问题怎么解决,求教

c#编写计算器如何实现计算出结果后,不清除屏幕继续输入的数字,新的数...
如果输入的是数值按键(0-9,小数点,删除键之外的按键),先判断是否是新数字,再进行清屏。

...不清除屏幕继续输入的数字,新的数字是直接自动清除屏幕后输出_百 ...
在你输入数字的按钮上面加入:if(INPUT.Text=="0"){ INPUT.Text = ((Button)sender).Text;} else if(result!=0){ INPUT.Text = "";result = 0;INPUT.Text += ((Button)sender).Text;} else { INPUT.Text += ((Button)sender).Text;} ...

怎么让C语言写的计算器计算完一组数以后不让程序结束,返回再重新计算别...
include<stdio.h>#include <ctype.h>int main(){ while(1) {float a,b;printf("请输入两个正数,中间用逗号隔开:\\n");scanf("%f,%f",&a,&b);printf("两数之和a+b为%f\\n",a+b);printf("两数之差a-b为%f\\n",a-b);printf("两数之积a*b为%f\\n",a*b);if(b==0){pr...

C#做一个计算器如何实现键盘输入
自己改一下方法名就可以了 private void txtResult_KeyPress(object sender, KeyPressEventArgs e){ \/\/用于只接受键盘数字 if (e.KeyChar < '0' || e.KeyChar > '9'){ e.Handled = true;} \/\/以下是自定义控件 \/\/主要是用于接受退格键和‘.’字符 并且此字符只能有一个 if (e.KeyChar...

急求:怎么用C#实现微软自带的计算器的一些功能(菜鸟级,望写出具体及代...
1、文本框的不可用(如图)解:文本框只读(readonly)属性设置为true 2、计算过后,不用按C键即可继续另一道运算(例如:算10+9=19后可直接输入其他数字而不需要按C键清零后方可重新另一道运算)解:设置一个bool类型标识变量,在计算出了结果后赋一个true值,再次进行输入过程中判断这个标识变量的...

c#做的计算器,如何在下次输入数字时,textbox里的结果自动清除
c#做的计算器,如何在下次输入数字时,textbox里的结果自动清除 你可以增加一个按钮控件,命为清空 具体是双击控件,进入后台编写代码 即可实现 public void Button_click(...){ textbox1.Text=" ";textbox2.Text=" ";textbox3.Text=" ";textbox4.Text=" ";...} c#计算器如何在下一个数...

如何用c#实现一个简单的计算器?
好的,以下是一个简单的C#计算器示例代码:using System;namespace Calculator { class Program { static void Main(string[] args){ double num1, num2, result;string op;Console.WriteLine("请输入第一个数字:");num1 = double.Parse(Console.ReadLine());Console.WriteLine("请输入运算符:")...

c# 计算器代码怎样只允许在数字后面输入一个点,至少有1个数字包括0的...
我封装好的方法 现在textbox中只能输入浮点数,整数位数、小数位数、正负号可控。如下:\/\/\/ \/\/\/ 限制textbox的内容为float类型 \/\/\/ \/\/\/ 文本框 \/\/\/ 整数个数 \/\/\/ 小数个数 \/\/\/ 是否允许正负号 public static void CheckFloatOfTextBox(TextBox textBox, int intCount, int decimalCount,...

C#计算器 输入运算符后无法输入多个数字
你的意思是键盘输入数字和字符进行运算的时候,只要敲一下回车就能计算出来是吗?我这个案例是能响应回车键的,然后其余的数字你要自己去查一下 tb_code.attributes.add("onkeypress","if(event.keycode==13){document.all.bt_login.click();return false;} ...

c#中计算器怎么绑定数字
通过简单绑定和复杂绑定。简单绑定是指将一个控件的某个属性绑定到某个数据元素(如数据集表中列的值)的能力,这是用于TextBox或Label等控件的典型绑定类型。复杂绑定指将一个控件绑定到多个数据元素的能力,通常绑定到数据库的多条记录。

相似回答