我知道如果我们想显示 pc 时间,我们将使用以下编码:
System.Windows.Forms.Timer tmr = null;
private void StartTimer()
{
tmr = new System.Windows.Forms.Timer();
tmr.Interval = 1000;
tmr.Tick += new EventHandler(tmr_Tick);
tmr.Enabled = true;
}
void tmr_Tick(object sender, EventArgs e)
{
textBox6.Text = DateTime.Now.ToString("dd/MM/yy HH:mm:ss");
}
private void Form1_Load(object sender, EventArgs e)
{
StartTimer();
}
但我不想显示电脑时间。我想显示另一个时间(我的情况下来自微控制器的 rtc 时间)。
如果我从串口获取 rtc 时间并在文本框中显示为“09:00:00”。它只是静态的,对吧?如何让它在文本框上运行/递增?
我已经尝试了从上面的编码修改的以下内容:
System.Windows.Forms.Timer rtc = null;
private void StartRTC()
{
rtc = new System.Windows.Forms.Timer();
rtc.Interval = 1000;
rtc.Tick += new EventHandler(rtc_Tick);
rtc.Enabled = true;
}
int i = 1;
DateTime dt = new DateTime();
void rtc_Tick(object sender, EventArgs e)
{
textBox17.Text = dt.AddSeconds(i).ToString("HH:mm:ss");
i++;
}
但是我的文本框中显示的时间总是从 00:00:00 开始递增。
我如何让它在我从微控制器 rtc 获得的时间开始增加?