C# 如何使用当前时间持续更新标签?
我使用了以下代码行C# 如何使用当前时间持续更新标签?,c#,datetime,clock,hour,C#,Datetime,Clock,Hour,我使用了以下代码行 int pp = DateTime.Now.Hour; 没关系。我写 label1.text=pp.tostring(); 为了验证,它可以工作,但是如果我在label1中的19:59(例如)打开我的表单,会出现19,一分钟后,当时钟为08:00,label1中的值不会改变,仍然会出现19,而不是20 之后,如果我关闭表单并重新打开它,label1中的数字是20 在窗体运行时,如何实时修改datetime.now.hour的值? 谢谢因为您使用的是“表单”术语,所以我假
int pp = DateTime.Now.Hour;
没关系。我写
label1.text=pp.tostring();
为了验证,它可以工作,但是如果我在label1中的19:59
(例如)打开我的表单,会出现19
,一分钟后,当时钟为08:00
,label1中的值不会改变,仍然会出现19
,而不是20
之后,如果我关闭表单并重新打开它,label1中的数字是20
在窗体运行时,如何实时修改datetime.now.hour的值?
谢谢因为您使用的是“表单”术语,所以我假设使用Windows表单,最简单的方法是添加一个计时器
组件,设置一个合理的间隔
(合理的意思是,在标签更改之前的小时更改时,您能承受的最大延迟时间是多长…间隔越高,进程占用的CPU就越少)在其上,以及在其勾选事件上,执行以下操作:
static void MyTimer_Tick(object sender, EventArgs e)
{
int pp = DateTime.Now.Hour;
label1.text=pp.tostring();
}
由于您使用的是“表单”术语,我将假设Windows表单,最简单的方法是添加一个计时器
组件,设置一个合理的间隔
(合理的意思是,在标签更改之前的小时更改时,您能承受的最大延迟时间是多长…间隔越高,进程占用的CPU就越少)在其上,以及在其勾选事件上,执行以下操作:
static void MyTimer_Tick(object sender, EventArgs e)
{
int pp = DateTime.Now.Hour;
label1.text=pp.tostring();
}
您需要实现一个计时器
,并让它的事件更新label1.text
。只调用DateTime.Now.Hour
是不够的,因为它只更新一次。它没有设置定期更新的方法
using System.Timers;
namespace Example {
static Timer _timer;
static void Main() {
_timer = new Timer(1000); // Update every 1 second.
_timer.Elapsed += UpdateMyLabel;
_timer.Start();
}
static void UpdateMyLabel(object sender, ElapsedEventArgs e) {
label1.Text = DateTime.Now.Hour;
}
}
您需要实现一个计时器
,并让它的事件更新label1.text
。只调用DateTime.Now.Hour
是不够的,因为它只更新一次。它没有设置定期更新的方法
using System.Timers;
namespace Example {
static Timer _timer;
static void Main() {
_timer = new Timer(1000); // Update every 1 second.
_timer.Elapsed += UpdateMyLabel;
_timer.Start();
}
static void UpdateMyLabel(object sender, ElapsedEventArgs e) {
label1.Text = DateTime.Now.Hour;
}
}
我会推断标签类并使用计时器刻度来更新标签。就像在OOP;)中一样。我会推断标签类并使用计时器刻度来更新标签。就像在OOP;)中一样。带有刻度事件的计时器?您需要计时器。检查计时器控件。使用计时器并在其Tick
处理程序中更新UI(前提是这是WinForms问题)。或者在WPF或您正在使用的任何UI库中执行等效操作。您只需根据当前时间设置一次值。如果您希望实时更新该值,则需要使用计时器或其他工具更新该值。我将编辑此问题,以明确您询问的是如何自动刷新标签;您的问题与日期时间无关。带有滴答事件的计时器?您需要计时器。检查计时器控件。使用计时器并在其Tick
处理程序中更新UI(前提是这是WinForms问题)。或者在WPF或您正在使用的任何UI库中执行等效操作。您只需根据当前时间设置一次值。如果您希望实时更新该值,则需要使用计时器或其他工具更新该值。我将编辑此问题,以明确您询问的是如何自动刷新标签;你的问题与日期时间无关。