自己弄了个简易的计算器求助看一下里面的bug,还有不能进行再一次计算请问要怎么办

问题描述

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsFormsApplication1{publicpartialclass计算器:Form{privatestringa=null;privatestringb=null;privatedoublec=0;privatestringsign=null;privatebooldian=false;public计算器(){InitializeComponent();}privatevoidbutton11_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"0";}elseif(a==null){a="0";}textBox1.Text=a;}privatevoidbutton12_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"1";}elseif(a==null){a="1";}textBox1.Text=a;}privatevoidbutton7_Click(objectsender,EventArgse){if(dian==false){dian=true;if(a!=null){a=a+".";}else{a="0.";}textBox1.Text=a;}}privatevoidbutton15_Click(objectsender,EventArgse){if(sign==null){sign="+";b=a;a=null;dian=false;}}privatevoidbutton8_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"2";}elseif(a==null){a="2";}textBox1.Text=a;}privatevoidbutton10_Click(objectsender,EventArgse){if(sign=="+"){c=Convert.ToDouble(a)+Convert.ToDouble(b);}if(sign=="-"){c=Convert.ToDouble(b)-Convert.ToDouble(a);}if(sign=="*"){c=Convert.ToDouble(a)*Convert.ToDouble(b);}if(sign=="/"){c=Convert.ToDouble(b)/Convert.ToDouble(a);}textBox1.Text=Convert.ToString(c);}privatevoidbutton4_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"3";}elseif(a==null){a="3";}textBox1.Text=a;}privatevoidbutton13_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"4";}elseif(a==null){a="4";}textBox1.Text=a;}privatevoidbutton9_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"5";}elseif(a==null){a="5";}textBox1.Text=a;}privatevoidbutton5_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"6";}elseif(a==null){a="6";}textBox1.Text=a;}privatevoidbutton1_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"7";}elseif(a==null){a="7";}textBox1.Text=a;}privatevoidbutton17_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"8";}elseif(a==null){a="8";}textBox1.Text=a;}privatevoidbutton16_Click(objectsender,EventArgse){if(a!=null&&a!="0"){a=a+"9";}elseif(a==null){a="9";}textBox1.Text=a;}privatevoidbutton2_Click(objectsender,EventArgse){if(sign==null){sign="-";b=a;a=null;dian=false;}}privatevoidbutton6_Click(objectsender,EventArgse){if(sign==null){sign="*";b=a;a=null;dian=false;}}privatevoidbutton3_Click(objectsender,EventArgse){if(sign==null){sign="/";b=a;a=null;dian=false;}}privatevoidbutton14_Click(objectsender,EventArgse){textBox1.Text="0";c=0;a=null;b=null;dian=false;sign=null;}}}

解决方案

解决方案二:
建议你去网上看看别人的计算器实现思路。你这完全拖控件写代码啊,谁能有空给你找bug呢
解决方案三:
什么叫“看里边的bug”?贴出你的调试画面来。
解决方案四:

解决方案五:
这么多同样代码你不累吗?。。不知道绑定同一个事件吗?
解决方案六:
最好在button控件的事件里绑定一个方法,这样代码比较简洁,bug也好找,而且你可以调试一下在说出bug。一大串的看过去很烦的
解决方案七:
好吧我和大家一样不打算看代码……提个建议,既然开始写小项目了,就不要一直intaintb这种了……慢慢挑吧会打断点么?

时间: 2025-01-23 20:04:53

自己弄了个简易的计算器求助看一下里面的bug,还有不能进行再一次计算请问要怎么办的相关文章

java生成一个简易的计算器

下面的代码是生成一个简易的计算器. Calculator import java.awt.*; import java.awt.event.*; import javax.swing.*; class CalculatorPanel extends JPanel implements ActionListener { public CalculatorPanel() { setLayout(new BorderLayout()); display = new JTextField("0"

c++-C++友元的问题。不知道错在哪里。弄得恼火了。。求助。

问题描述 C++友元的问题.不知道错在哪里.弄得恼火了..求助. 先不要管它干什么用,要怎样修改才可以运行呢?为什么要这样修改? void set_input(){input=(input==TV)? DVD : TV;} void settings() const; void ch_h(Remote &t); void input_ch_h(Remote &t); private: int state; int volume; int maxchannel; int channel; i

代码-Java图形界面 简易BMI计算器怎样设计算法

问题描述 Java图形界面 简易BMI计算器怎样设计算法 老师出差去了 布置作业做一个简易BMI计算器 写了半天才写出一个图形界面 不知道怎样实现键盘录入身高.体重,点击评估按钮得到BMI和结果(结果输出的是胖,瘦,正常三种情况) 代码.界面如下: 解决方案 你的核心问题是如何对按钮进行响应,需要看下ActionListener的相关方法. public class BMI extends JFrame{ private JLabel lblHeight; private JLabel lblW

四种方框内打钩符号的简易方法 如何在Word方框里打钩?

  四种方框内打钩符号的简易方法   如何在Word方框里打钩?          一.在方框里打钩的方法一 利用带圈数字来实现在方框内打钩,只在Word 2003及2007版中适用.步骤如下: 1.打开Word文档,点击插入菜单,选择特殊符号; 2.在特殊符号中,选择数学符号,选择对勾,这样对勾就出来了; 3.接下来选中这个对勾,点击格式,选择中文版式,选带圈字符; 4.圈号选中方框,点击确定; 5.这样,带框的对勾就出来啦. 二.在方框内打钩的方法二 通过插入特殊字符来实现在方框内打钩.这个

Android计算器,在不销毁活动的前提下,简单模式和科学计算模式之间的变化用什么实现好?

问题描述 Android计算器,在不销毁活动的前提下,简单模式和科学计算模式之间的变化用什么实现好? 7C 就是点击变换计算模式按钮,就会变成科学计算器,但是并不会销毁重建活动. 解决方案 使用两个布局叠加,显示隐藏操作即可 解决方案二: 重写setContentView即可

mysql-表怎么设计?求助看题

问题描述 表怎么设计?求助看题 从今天算起,7天的班,每天从6点到23点,以小时时间段 排班.分为上午,下午,晚上.例:上午时间分配满,状态为忙碌.否则为空闲. 请问 表要怎么设计?? 用的mysql数据库 解决方案 schedule表:date(日期) day(星期) morning(上午) afternoon(下午) night(晚上) 解决方案二: 少上传一张图. 解决方案三: 表怎么设计和是什么数据库无关吧,和你程序逻辑有关. 获取当天时间点后判断是上午下午还是晚上,是A是B还是C, 当

【iOS开发】简易加法计算器的实现

需求描述 实现一个简易的加法计算器,可实现对整数和浮点数的加法运算,输出结果保留到小数点后面两位. 程序实现 新建一个名字为"Add"的iOS工程,打开Main.storyboard,将两个TextField.两个Label和一个Button拖入界面中,并摆放整齐,如图1所示. 图1 界面元素摆放示意图 在图1中,我们将其中一个Label命名为"+",表示操作符,同时,将Button命名为"=",当点击该Button的时候,即可看到运算的结果.

Flash制作一个简易的计算器教程

教程 俺很菜,如果高手在里面发现不对的地方请指点. 大家路过不做也帮忙顶下,俺折腾了半天才弄好的.嘿嘿 全屏观看

求助:visio里无法改变器件颜色!

问题描述 通过在器件的shapesheet里直接改变linecolor的值来改变颜色,可是线路的颜色改变了,器件却改变不了.见下图可是打开器件的"线条"属性,发现颜色其实是变了的,只是无法显示出来,如下图所示,本质是红色了,显示的却还是绿色..在visio里直接改shapesheet的值不行,在C#里通过程序改也不行,程序:vShape.get_CellsU("LineColor").Formula="THEMEGUARD(RGB(255,0,0))&qu