基本上,我的表单中有多个按钮,我希望它在按钮中显示一个秒表。按下按钮时的文本。(按钮被修改为切换按钮。)并在按钮关闭时停止和重置计时器。看起来很简单,但是因为我有多个可以按任何顺序按下的按钮,而且我对线程一无所知,所以这似乎比我想象的要困难得多。
我最初的意图是拥有一个每秒不断运行的函数,并且只有在使用以下代码按下按钮时才与 interager 交互:
public void Jogger()//purpose is to step up time[0] every second only when a button is on.
{
while (true)
{
for (int i = 0; i < 16; i++)
{
if (btnstat[i])
time[i]++;
}
Thread.Sleep(1000);
}
}
问题是,我不知道线程,所以当我调用函数时,它会卡住这样做,只有这个。
无论哪种方式,一旦调用它,我所做的就是调用我的更新函数来更新所有按钮,包括显示时间 [0] 的 button.Text;(围绕按钮构建的阵列)
他们这样做是不是一种更好的方法,不会导致过多的 CPU 使用和/或简单地工作?
感谢所有的帮助!——约翰·艾维