错误:对象引用未设置为对象的实例 [英] Error:Object Refrence not set to an instance of object
问题描述
使用System;
使用System.Collections.Generic;
使用System.ComponentModel;
使用System.Data;
使用System.Drawing;
使用System.Linq;
使用System.Text;
使用System.Windows.Forms ;
命名空间WindowsFormsApplication1
{
public partial class Form1:Form
{
string s1,s2,s3;
char oper,oper1;
int flag = 1,flag1;
public Form1()
{
InitializeComponent();
MaximizeBox = false;
}
public int find(string s)
{
// string s = textBox1.Text;
int j = 0;
for(int i = 0; i< s.Length; i ++)
{
if(s [i] == ''。'')
{
j = 0;
休息;
}
其他
{
j = 1;
}
}
返回j;
}
public void calculation()< br $>
{
试试
{
int e1;
double equal;
if(flag == 1 &&(oper1 ==''+''|| oper ==''+''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if(j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1)+ int.Parse(s2);
textBox1 .Text = e1.ToString();
}
else if(j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2 );
textBox1.Text = equal.ToString();
}
else if(j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2);
textBox1.Text = equal.ToString();
} < br $>
}
else if (flag == 1 &&(oper1 =='' - ''|| oper =='' - ''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if(j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) - int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if(j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if(j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double .Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if(flag == 1 &&(oper1 ==''*''|| oper ==''*''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if(j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1)* int.Parse(s2);
textBox1.Text = e1.ToString() ;
}
否则if(j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1)* double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if(j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1)* double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1)* double.Parse(s2) ;
textBox1.Text = equal.ToString();
}
}
else if(flag = = 1 &&(oper1 ==''/''|| oper ==''/''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if(j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1)/ int.Parse(s2);
textBox1 .Text = e1.ToString();
}
else if(j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1)/ double.Parse(s2);
textBox1.Text = equal。 ToString();
}
else if(j == 0 && k == 1)
{
s2 = textBox1.Te xt;
equal = double.Parse(s1)/ double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1 )/ double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if(flag == 1 &&(oper1 ==''%''|| oper ==''%''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if(j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1)+ int.Parse(s2);
textBox1.Text = e1.ToString() ;
}
否则if(j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if(j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1)+ double.Parse(s2) ;
textBox1.Text = equal.ToString();
}
}
// oper ='''';
// oper1 ='''';
}
catch(exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btn0_Click(object sender,EventArgs e)
{
if(oper ==' - || oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''=''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn0.Text;
s3 = btn0.Text;
oper1 = oper;
oper ='''' ;
flag = 1;
}
else
{
textBox1.Text + = btn0.Text;
flag = 1;
}
}
private void btn1_Click(object sender,EventArgs e)
{
if(oper =='' - ''||| oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn1.Text;
s3 = btn1.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
其他
{
textBox1.Text + = btn1.Text;
flag = 1 ;
}
}
private void btn2_Click(object sender,EventArgs e)
{
if(oper =='' - ''|| oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn2.Text;
s3 = btn2.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
其他
{
textBox1.Text + = btn2.Text;
flag = 1;
}
}
private void btn3_Click(object sender, EventArgs e)
{
if(oper =='' - ''|| oper = =''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn3.Text;
s3 = bt n3.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
else
{
flag = 1;
textBox1.Text + = btn3.Text; < br $>
}
}
private void btn4_Click(object sender,EventArgs e)
{
if(oper =='' - ''|| oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn4.Text;
s3 = btn4.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
else
{
textBox1.Text + = btn4.Text;
flag = 1;
}
}
private void btn5_Click(object sender, EventArgs e)
{
if(oper =='' - ''|| oper ==''+''|| oper ==''*'' || oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1。 Text =;
textBox1.Text + = btn5.Text;
s3 = btn5.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
else
{
flag = 1;
textBox1.Text + = btn5.Text;
}
}
private void btn6_Click(object sender,EventArgs e)
{
if( oper =='' - ''|| oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn6.Text;
s3 = btn6.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
其他
{
flag = 1;
textBox1.Text + = btn6.Text;
}
}
private void BTn7_Click(object sender, EventArgs e)
{
if(oper =='' - ''|| oper ==''+''|| oper ==''*'' || oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1。 Text =;
textBox1.Text + = BTn7.Text;
s3 = BTn7.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
else
{
flag = 1;
textBox1.Text + = BTn7.Text;
}
}
private void btn8_Click(object sender,EventArgs e)
{
if( oper =='' - ''|| oper ==''+''|| oper ==''*''|| oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1.Text =;
textBox1.Text + = btn8.Text;
s3 = btn8.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
其他
{
flag = 1;
textBox1.Text + = btn8.Text;
}
}
private void btn9_Click(object sender, EventArgs e)
{
if(oper =='' - ''|| oper ==''+''|| oper ==''*'' || oper ==''/''|| oper ==''%''|| oper ==''x'')
{
textBox1。 Text =;
textBox1.Text + = btn9.Text;
s3 = btn9.Text;
oper1 = oper;
oper ='''';
flag = 1;
}
else
{
flag = 1;
textBox1.Text + = btn9.Text;
}
}
private void btnpoint_Click(object sender,EventArgs e)
{
string s = textBox1.Text;
int j = 0;
for(int i = 0;我< s.Length; i ++)
{
if(s [i] ==''。'')
{
j = 0;
休息;
}
else
{
j = 1;
}
}
如果(j == 1)
{
textBox1.Text + = btnpoint.Text;
}
}
private void btnPlus_Click(object sender,EventArgs e)
{
if(flag1 == 2)
{
oper =''+'';
flag = 0;
s1 = textBox1 .Text;
}
else
{
计算();
s1 = textBox1.Text;
oper =''+'';
flag = 0;
}
// flag = 3;
}
private void btneql_Click(object sender,EventArgs e)
{
尝试
{
if(textBox1.Text ==0)
{
textBox1.Text =0;
}
计算( );
if(flag1!= 2)
{
s1 = s3.ToString();
}
flag1 = 2;
}
catch(exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnminus_Click(object sender,EventArgs e)
{
if(flag1 == 2)
{
oper ='' - '';
flag = 0;
s1 = textBox1.Text;
}
其他
{
计算();
s1 = textBox1.Text;
oper ='' - '';
flag = 0;
}
}
private void btnmul_Click(对象发送者,EventArgs e)
{
if(flag1 == 2)
{
oper =''*'';
flag = 0;
s1 = textBox1.Text;
}
其他
{
计算();
s1 = textBox1.Text;
oper =''*'';
flag = 0;
}
}
private void btndiv_Click(object sender,EventArgs e)
{
if(flag1 == 2)
{
oper =''/'';
flag = 0;
s1 = textBox1.Text; < br $>
}
其他
{
计算();
s1 = textBox1.Text;
oper =''/'';
flag = 0;
}
}
private void btnPlusMinus_Click(object sender,EventArgs e)
{
string s = textBox1.Text;
if(s [0] =='' - ' ')
{
int myInt = System.Math.Abs(int.Parse(textBox1.Text));
textBox1.Text = myInt.ToString();
}
else
{
textBox1.Text ='' - ''+ textBox1.Text;
}
}
private void BtnMod_Click(object sender,EventArgs e)
{
if( flag1 == 2)
{
flag = 0;
oper =''% '';
s1 = textBox1.Text;
}
其他
{
计算();
s1 = textBox1.Text;
oper =''%'';
flag = 0;
}
}
private void btnsqrt_Click(object sender,EventArgs e)
{
textBox1.Text =(System.Math.Sqrt(int.Parse(textBox1.Text)))。ToString();
oper =''%'' ;
}
private void btndivx_Click(object sender,EventArgs e)
{
s2 = textBox1.Text;
double i = double.Parse(s2);
if(i == 0)
{
textBox1.Text =0;
oper =''x'';
}
else
{
i =(1 / i);
textBox1.Text = i.ToString( );
oper ='''x'';
}
}
private void BtnBackSpace_Click(object sender,EventArgs e)
{
try
{
string str = textBox1.Text;
textBox1.Text =;
int i = str.Length;
for(int j = 0; j<我 - 1; j ++)
{
textBox1.Text + = Convert.ToString(str [j]);
}
}
catch(exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void Btn_CE_Click(object sender,EventArgs e)
{
}
private void btn_C_Click(object sender,EventArgs e)
{
textBox1.Text =0;
flag = 0;
oper ='''';
oper1 ='''';
flag1 = 0;
s1 = s2 = s3 = null;
}
}
}
当我要点击同等按钮时(如果textbox1为空)而不是错误Objec t Refrence未设置为对象实例即将提供解决方案
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 WindowsFormsApplication1
{
public partial class Form1 : Form
{
string s1,s2,s3;
char oper,oper1;
int flag = 1,flag1;
public Form1()
{
InitializeComponent();
MaximizeBox = false;
}
public int find(string s)
{
//string s = textBox1.Text;
int j = 0;
for (int i = 0; i < s.Length; i++)
{
if (s[i] == ''.'')
{
j = 0;
break;
}
else
{
j = 1;
}
}
return j;
}
public void calculation()
{
try
{
int e1;
double equal;
if (flag==1 &&( oper1 == ''+'' || oper == ''+''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k==1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) + int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if(j==0 && k==0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == ''-'' || oper == ''-''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) - int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == ''*'' || oper == ''*''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) * int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == ''/'' || oper == ''/''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) / int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == ''%'' || oper == ''%''))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) + int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
//oper = '' '';
// oper1 = '' '';
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btn0_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper==''=''||oper==''x'')
{
textBox1.Text = "";
textBox1.Text += btn0.Text;
s3 = btn0.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
textBox1.Text += btn0.Text;
flag = 1;
}
}
private void btn1_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn1.Text;
s3 = btn1.Text;
oper1 = oper;
oper= '' '';
flag = 1;
}
else
{
textBox1.Text += btn1.Text;
flag = 1;
}
}
private void btn2_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn2.Text;
s3 = btn2.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
textBox1.Text += btn2.Text;
flag = 1;
}
}
private void btn3_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn3.Text;
s3 = btn3.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += btn3.Text;
}
}
private void btn4_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn4.Text;
s3 = btn4.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
textBox1.Text += btn4.Text;
flag = 1;
}
}
private void btn5_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn5.Text;
s3 = btn5.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += btn5.Text;
}
}
private void btn6_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn6.Text;
s3 = btn6.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += btn6.Text;
}
}
private void BTn7_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += BTn7.Text;
s3 = BTn7.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += BTn7.Text;
}
}
private void btn8_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn8.Text;
s3 = btn8.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += btn8.Text;
}
}
private void btn9_Click(object sender, EventArgs e)
{
if (oper == ''-'' || oper == ''+'' || oper == ''*'' || oper == ''/'' || oper == ''%'' || oper == ''x'')
{
textBox1.Text = "";
textBox1.Text += btn9.Text;
s3 = btn9.Text;
oper1 = oper;
oper = '' '';
flag = 1;
}
else
{
flag = 1;
textBox1.Text += btn9.Text;
}
}
private void btnpoint_Click(object sender, EventArgs e)
{
string s = textBox1.Text;
int j = 0;
for (int i = 0; i < s.Length; i++)
{
if (s[i] == ''.'')
{
j = 0;
break;
}
else
{
j = 1;
}
}
if (j == 1)
{
textBox1.Text += btnpoint.Text;
}
}
private void btnPlus_Click(object sender, EventArgs e)
{
if (flag1 == 2)
{
oper = ''+'';
flag = 0;
s1 = textBox1.Text;
}
else
{
calculation();
s1 = textBox1.Text;
oper = ''+'';
flag = 0;
}
//flag = 3;
}
private void btneql_Click(object sender, EventArgs e)
{
try
{
if (textBox1.Text== "0")
{
textBox1.Text = "0";
}
calculation();
if (flag1 != 2)
{
s1 = s3.ToString();
}
flag1 = 2;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnminus_Click(object sender, EventArgs e)
{
if (flag1 == 2)
{
oper = ''-'';
flag = 0;
s1 = textBox1.Text;
}
else
{
calculation();
s1 = textBox1.Text;
oper = ''-'';
flag = 0;
}
}
private void btnmul_Click(object sender, EventArgs e)
{
if (flag1 == 2)
{
oper = ''*'';
flag = 0;
s1 = textBox1.Text;
}
else
{
calculation();
s1 = textBox1.Text;
oper = ''*'';
flag = 0;
}
}
private void btndiv_Click(object sender, EventArgs e)
{
if (flag1 == 2)
{
oper = ''/'';
flag = 0;
s1 = textBox1.Text;
}
else
{
calculation();
s1 = textBox1.Text;
oper = ''/'';
flag = 0;
}
}
private void btnPlusMinus_Click(object sender, EventArgs e)
{
string s = textBox1.Text;
if (s[0] == ''-'')
{
int myInt = System.Math.Abs(int.Parse(textBox1.Text));
textBox1.Text = myInt.ToString();
}
else
{
textBox1.Text = ''-'' + textBox1.Text;
}
}
private void BtnMod_Click(object sender, EventArgs e)
{
if (flag1 == 2)
{
flag = 0;
oper=''%'';
s1 = textBox1.Text;
}
else
{
calculation();
s1 = textBox1.Text;
oper = ''%'';
flag = 0;
}
}
private void btnsqrt_Click(object sender, EventArgs e)
{
textBox1.Text= (System.Math.Sqrt(int.Parse(textBox1.Text))).ToString();
oper = ''%'';
}
private void btndivx_Click(object sender, EventArgs e)
{
s2 = textBox1.Text;
double i = double.Parse(s2);
if (i == 0)
{
textBox1.Text = "0";
oper=''x'';
}
else
{
i = (1 / i);
textBox1.Text = i.ToString();
oper=''x'';
}
}
private void BtnBackSpace_Click(object sender, EventArgs e)
{
try
{
string str = textBox1.Text;
textBox1.Text = "";
int i = str.Length;
for (int j = 0; j < i - 1; j++)
{
textBox1.Text += Convert.ToString(str[j]);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void Btn_CE_Click(object sender, EventArgs e)
{
}
private void btn_C_Click(object sender, EventArgs e)
{
textBox1.Text = "0";
flag = 0;
oper='' '';
oper1='' '';
flag1 = 0;
s1=s2=s3 = null;
}
}
}
when i am going to click at equal button(if textbox1 is empty) than error "Object Refrence not set to an instance of object" is coming please provide solution
推荐答案
private void btneql_Click(object sender, EventArgs e)
{
try
{
if (textBox1.Text== "0")
{
textBox1.Text = "0";
}
calculation();
if (flag1 != 2)
{
s1 = s3.ToString();
}
flag1 = 2;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
public void calculation()
{
try
{
int e1;
double equal;
if (flag==1 &&( oper1 == '+' || oper == '+'))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k==1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) + int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if(j==0 && k==0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == '-' || oper == '-'))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) - int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) - double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == '*' || oper == '*'))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) * int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) * double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == '/' || oper == '/'))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) / int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) / double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
else if (flag==1 &&( oper1 == '%' || oper == '%'))
{
string s = textBox1.Text;
int j = find(s);
int k = find(s1);
if (j == 1 && k == 1)
{
s2 = textBox1.Text;
e1 = int.Parse(s1) + int.Parse(s2);
textBox1.Text = e1.ToString();
}
else if (j == 0 && k == 0)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else if (j == 0 && k == 1)
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
else
{
s2 = textBox1.Text;
equal = double.Parse(s1) + double.Parse(s2);
textBox1.Text = equal.ToString();
}
}
//oper = ' ';
// oper1 = ' ';
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
please look into both
please look into both
这篇关于错误:对象引用未设置为对象的实例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!