对象引用未设置为对象的实例(计算器项目错误)
本文关键字:计算器 项目 错误 实例 设置 对象 对象引用 | 更新日期: 2023-09-27 18:12:40
好的,我很确定我的代码都是正确的,所以我不确定为什么我得到这个错误。:P这是我的代码——>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Calculator
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1()); //This is where I am getting the error at
}
}
}
在我的program.cs文件中。这是我的form。cs文件。——>
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 Calculator
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btn0_Click(object sender, EventArgs e)
{
txtbox.Text += btn0.Text;
}
private void btn1_Click(object sender, EventArgs e)
{
txtbox.Text += btn1.Text;
}
private void btn2_Click(object sender, EventArgs e)
{
txtbox.Text += btn2.Text;
}
private void btn3_Click(object sender, EventArgs e)
{
txtbox.Text += btn3.Text;
}
private void btn4_Click(object sender, EventArgs e)
{
txtbox.Text += btn4.Text;
}
private void btn5_Click(object sender, EventArgs e)
{
txtbox.Text += btn5.Text;
}
private void btn6_Click(object sender, EventArgs e)
{
txtbox.Text += btn6.Text;
}
private void btn7_Click(object sender, EventArgs e)
{
txtbox.Text += btn7.Text;
}
private void btn8_Click(object sender, EventArgs e)
{
txtbox.Text += btn8.Text;
}
private void btn9_Click(object sender, EventArgs e)
{
txtbox.Text += btn9.Text;
}
private void btnPoint_Click(object sender, EventArgs e)
{
if (txtbox.Text == "0")
{
txtbox.Text = "0.";
}
else
{
txtbox.Text += btnPoint.Text;
}
}
private void btnPlus_Click(object sender, EventArgs e)
{
//Add plus code here
}
private void btnMinus_Click(object sender, EventArgs e)
{
//Add minus code here
}
private void btnTimes_Click(object sender, EventArgs e)
{
//Add times code here
}
private void btnDivide_Click(object sender, EventArgs e)
{
//Add divide code here
}
private void btnEqual_Click(object sender, EventArgs e)
{
//Add equal code here
}
private void btnClear_Click(object sender, EventArgs e)
{
txtbox.Clear();
}
}
}
当我尝试先输入一个数字,然后输入一个小数时发生错误。例如,我按"2",然后按"。"。会出现错误"对象引用未设置为对象的实例"。帮助是感激的,谢谢。抱歉,如果这是一个愚蠢的错误。: P
在你的问题的评论中给了你一些有用的想法,所以我将尝试在这里汇总什么是最受欢迎的分析路线,并添加我自己的评论:
首先,发生异常的行(Application.Run(new Form1());
)不是查找错误的真正位置。应用程序。Run是一个WinForm基础设施方法,它会做一些神奇的事情,然后运行你的代码。
最后,因为这发生在点击'。'按钮,只有两个变量可以导致这种类型的异常是txtbox和btnPoint,如果其中一个是空的-那就是它。如果在调试期间将鼠标悬停在变量名上(按照上面的说明),您应该看到变量的内容是否为null (null将简单地表示'null')。