gpt4 book ai didi

c# - 如何将变量从一个按钮发送到另一个按钮

转载 作者:行者123 更新时间:2023-11-30 17:09:48 24 4
gpt4 key购买 nike

到目前为止,我在我的一个程序中有这个,我希望它是如果你按下一个按钮来分解你输入的数字,你启用另一个按钮来获取该数据并将其保存到一个输出文件中。

private void button1_Click(object sender, EventArgs e)
{
string number = textBox1.Text;
int digits = int.Parse(number);
if (digits > 9999 || digits < 0)
{
MessageBox.Show("That is not a valid number");
}
else
{
int thousands = digits / 1000;
int hundreds = (digits - (thousands * 1000)) / 100;
int tens = (digits - ((hundreds * 100) + (thousands * 1000))) / 10;
int ones = (digits - ((tens * 10) + (hundreds * 100) + (thousands * 1000))) / 1;
label6.Text = thousands.ToString();
label7.Text = hundreds.ToString();
label8.Text = tens.ToString();
label9.Text = ones.ToString();
button2.Enabled = true;
}

到目前为止,我已经有了这个并且它可以工作,但是对于 button2,我希望通过单击按钮 1 生成的这些变量传递给 button2,因此当您单击它时,它将使用这些变量写入文件。有什么想法吗?

最佳答案

有几种方法,但看看您已经拥有的东西,为什么不直接将标签重新读回您想要的变量呢?

private void button2_Click(object sender, EventArgs e)
{
int thousands = Convert.ToInt32(label6.Text);
int hundreds = Convert.ToInt32(label7.Text);
//...etc
}

您也可以只设置全局变量而不是局部变量,即在任何方法调用之外声明您的整数

int thousands;
int hundreds;
int tens;
int ones;
private void button1_Click(object sender, EventArgs e)
{
//...code
thousands = digits / 1000;
hundreds = (digits - (thousands * 1000)) / 100;
tens = (digits - ((hundreds * 100) + (thousands * 1000))) / 10;
ones = (digits - ((tens * 10) + (hundreds * 100) + (thousands * 1000))) / 1;
}
private void button2_Click(object sender, EventArgs e)
{
Console.WriteLine(thousands); //...etc
}

不要经常这样做,因为如果你有大量的全局变量,事情很快就会变得困惑,但对于一个简单的程序(这似乎是这样)应该没问题。

关于c# - 如何将变量从一个按钮发送到另一个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12555840/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com