我创建了一个线程,在其中我只是将一个单选按钮从表单的左侧移动到右侧。这运行了,但是我的应用程序被阻塞了,我不能移动表单,什么都没有(我认为这是创建线程的原因,同时做多个事情)这是我的代码,我希望你明白我的意思问。提前致谢
private void moveRight( )
{
radioButton1.Left++;
}
private void moveLeft()
{
radioButton1.Left--;
}
public void run()
{
while (true)
{
while (radioButton1.Left != this.ClientSize.Width - 10)
{
if (InvokeRequired)
{
Invoke(new MethodInvoker(moveRight));
}
else
{
moveRight();
}
}
while (radioButton1.Left != 10)
{
if (InvokeRequired)
{
Invoke(new MethodInvoker(moveLeft));
}
else
{
moveLeft();
}
}
}
}
private void button1_Click(object sender, EventArgs e)
{
t = new Thread(new ThreadStart(run));
t.Start();
}