好吧,很简单,创建一个窗口窗体,放入一个按钮和一个标签,并给这个按钮一个点击事件。标签中的循环bug
private void button1_Click(object sender, EventArgs e)
{
int xa;
int ya;
for (xa = 647; xa < 982; xa++)
for (ya = 262; ya < 598; ya++)
{
label1.Text = xa.ToString() + " " + ya.ToString();
}
}
和程序只是约20秒,当我点击按钮。我怎样才能解决这个问题?
发生这种情况是因为你在UI线程上做了一个很长的任务。看看'BackgroundWorker','async'和'StringBuilder'作为奖励。 – SimpleVar
现在你的问题是“如果你运行需要花费一些时间和重复多次的代码,需要很长时间,如何修复它?”你可能想澄清你实际上想要达到什么... –
我没有看到我放入按钮是一个长期的任务,它只是一个300x300的运行,但我想在这个程序中看到的是,y在程序中立即增加正在运行,而不是完成时。 – Tranoze