【问题标题】:How to add in a GUI?如何在 GUI 中添加?
【发布时间】:2015-11-11 06:47:58
【问题描述】:

我几乎没有学习如何做 GUI。所以,我对这些东西很陌生。我在visual stuidos中使用windows窗体应用程序。

我需要帮助来添加我在文本框中输入的所有三个输入。

  • 我需要创建另一个方法吗?我创建了 sum 来添加所有变量,还使用单击按钮来显示 sum。

旁注 - MessageBox.Show(sum) 下面有一条红线

这是我的代码:

public partial class Form1 : Form
{
    double principal;
    double rate;
    double terms;
    double sum;

    public Form1()
    {
        InitializeComponent();
    }

    private void inputTextBoxPrincipal_TextChanged(object sender, EventArgs e)
    {
        principal = Convert.ToDouble(inputTextBoxPrincipal.Text);
    }

    private void inputTextBoxRate_TextChanged(object sender, EventArgs e)
    {
        rate = Convert.ToDouble(inputTextBoxRate.Text);
    }

    private void inputTextBoxTerms_TextChanged(object sender, EventArgs e)
    {
        terms = Convert.ToDouble(inputTextBoxTerms);
    }


    private double add()
    {
        sum = principal + rate + terms;
        return sum;
    }

    private void clickButtonEnter_Click(object sender, EventArgs e)
    {
        MessageBox.Show(sum);
    }

}

【问题讨论】:

  • 红线通常表示 IDE 不喜欢它。无论如何,您都可以编译代码并查看错误消息/警告以找出原因。 - 我看不到“add()”在哪里被调用。那么没有“add()”,“sum”怎么可能得到正确的值呢?
  • 尝试寻找教程和/或书籍来帮助您入门。

标签: c# user-interface methods add windows-forms-designer


【解决方案1】:

如下更改clickButtonEnter_Click 事件。

  private void clickButtonEnter_Click(object sender, EventArgs e)
        {
            double sum = add();
            MessageBox.Show(sum.ToString());
        }

编辑:你也不需要那些TextChanged 事件。跟着就好了。

public partial class Form1 : Form
{
    double principal;
    double rate;
    double terms;
    double sum;

    public Form1()
    {
        InitializeComponent();
    }    

    private double add()
    {
        principal = Convert.ToDouble(inputTextBoxPrincipal.Text);
        rate = Convert.ToDouble(inputTextBoxRate.Text);
        terms = Convert.ToDouble(inputTextBoxTerms);

        sum = principal + rate + terms;
        return sum;
    }

    private void clickButtonEnter_Click(object sender, EventArgs e)
    {
        double sum = add();
            MessageBox.Show(sum.ToString());
    }

}

【讨论】:

  • 有一个错误说它不能从双精度转换为字符串。
  • 现在可以使用了。感谢您的帮助和提供一些建议。
  • @LebronJamess 您必须在我的答案附近添加一个勾号。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-12
  • 1970-01-01
  • 1970-01-01
  • 2017-11-20
  • 2014-05-13
  • 2013-04-04
相关资源
最近更新 更多