我正在尝试每秒刷新一次标签,以便倒计时更新,遇到一些麻烦.对于noob问题,我对C#道歉非常陌生.
private void Form1_Load(object sender, EventArgs e)
{
bool ephCD = true;
int ephHours = (DateTime.Today.AddDays(1) - DateTime.Now).Hours;
int ephMinu = (DateTime.Today.AddDays(1) - DateTime.Now).Minutes;
int ephSecs = (DateTime.Today.AddDays(1) - DateTime.Now).Seconds;
label1.Text = ephHours.ToString() + ":" + ephMinu.ToString() + ":" + ephSecs.ToString();
while (ephCD == true)
{
label1.Refresh();
}
}
Run Code Online (Sandbox Code Playgroud)
启动时,程序甚至不会出现.
为什么程序没有出现?
你正在进行无限循环Form_Load.这意味着表单永远不会完成加载,并且您的程序将被卡住.
你的刷新循环需要在一个单独的线程上,或理想情况下抛出循环并使用Timer而不是在无限循环上旋转锁定CPU.
Timer myTimer = new Timer(1000);
void Form1_Load()
{
myTimer.Elapsed += UpdateLabel;
myTimer.Start();
}
private void UpdateLabel(object sender, ElapsedEventArgs e)
{
//Update label here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5565 次 |
| 最近记录: |