C# 如何让我的倒计时实际长达60秒?
为了好玩和练习编码,我正在做一个打字测试程序,我想首先要做的最简单的事情就是把计数器移到一边。这根本不像我想要的那样是60秒,我认为时间太短了,但是计数器确实下降了,所以这是一个加号。实际上,我从来没有在windows窗体中使用过计时器,所以我有很多东西要探索C# 如何让我的倒计时实际长达60秒?,c#,winforms,timer,countdown,C#,Winforms,Timer,Countdown,为了好玩和练习编码,我正在做一个打字测试程序,我想首先要做的最简单的事情就是把计数器移到一边。这根本不像我想要的那样是60秒,我认为时间太短了,但是计数器确实下降了,所以这是一个加号。实际上,我从来没有在windows窗体中使用过计时器,所以我有很多东西要探索 namespace Countdown { public partial class Form1 : Form { int s = 60; public Form1() {
namespace Countdown
{
public partial class Form1 : Form
{
int s = 60;
public Form1()
{
InitializeComponent();
label1.Text = s.ToString();
}
private void label1_Click(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
s -= 1;
if(s == 0)
{
timer1.Stop();
button1.Enabled = false;
textBox1.Enabled = false;
}
string ss = Convert.ToString(s);
label1.Text = ss;
}
}
您需要将
Timer.Interval
设置为以毫秒为单位的值(在您的情况下为60000)<代码>勾选事件将在这些毫秒过去后触发。假设您将计时器间隔设置为1000毫秒,正如代码所暗示的,您仍然不能期望其准确。有关原因的详细讨论,请参见标记的副本。较短的版本是,计时器不完全在间隔上执行处理程序;主流操作系统(包括Windows)并没有那么精确。您需要使用其他一些机制来跟踪时间,并且只使用计时器来获得当前时间的定期更新。