【发布时间】:2018-09-25 16:26:57
【问题描述】:
我想编写一个在textBox 中显示数字1 到10 的代码。以下代码是我写的。但不幸的是,textBox 中只显示了数字 10。我的代码有什么问题?谢谢。
public partial class Form1 : Form
{
int i,j;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
for (i = 1; i <= 10; i++)
{
textBox1.Text = Convert.ToString(i);
for (j = 0; j < 10000000; j++) ;
}
}
}
【问题讨论】:
-
每次迭代时都会覆盖 for 循环中的最后一个值 'i'。因此,显示 10,因为这是要迭代的最后一个数字。可能会考虑使用字符串生成器。
-
当您在 GUI 线程的单个函数中使用此功能时,您将看不到此功能。值会发生变化,但不幸的是,您的代码会阻塞 GUI 线程,并且在“单击”函数结束之前不会显示该值。而函数结束的时候,值已经是10了。