【发布时间】:2012-01-10 00:26:04
【问题描述】:
我正在尝试使用一个计时器,它每 5 秒或按用户指定的时间间隔执行一次操作。
现在,我想要一个函数,它会以 10 毫秒的间隔倒计时,直到第一个计时器的滴答声。我玩过并找到了一种简单的方法,即计算第一个计时器滴答间隔的 1/10,但是在计算数字时并不代表任何东西。
这种倒计时怎么做?
这就是我现在的样子,但我想改变它:
private void tmrClickInterval_Tick(object sender, EventArgs e)
{
if (nudPlusMinus.Value == 0) tmrClickInterval.Interval = int.Parse(nudClickInterval.Value.ToString());
else tmrClickInterval.Interval = random.Next(int.Parse(nudClickInterval.Value.ToString()) - int.Parse(nudPlusMinus.Value.ToString()), int.Parse(nudClickInterval.Value.ToString()) + int.Parse(nudPlusMinus.Value.ToString()));
if (tmrClickInterval.Interval / 10 == 0) tmrNextClick.Interval = 1;
else tmrNextClick.Interval = tmrClickInterval.Interval / 10;
tmrNextClick.Start();
content++;
nextClick = tmrClickInterval.Interval;
label1.Text = content.ToString();
}
private void tmrNextClick_Tick(object sender, EventArgs e)
{
if (nextClick <= 0) tmrNextClick.Stop();
else
{
nextClick = nextClick - (tmrClickInterval.Interval / 10);
lblNextClickCount.Text = (nextClick / 100).ToString();
}
}
【问题讨论】: