Windows窗体没有';不显示C#计时器
代码:Windows窗体没有';不显示C#计时器,c#,windows,forms,if-statement,timer,C#,Windows,Forms,If Statement,Timer,代码: while(整数计时器>0) { int_Ticks=0; 如果(整数刻度
while(整数计时器>0)
{
int_Ticks=0;
如果(整数刻度<100)
{
int_++;
}
如果(整数刻度==100)
{
int_定时器--;
lbl_Timer.Text=int_Timer.ToString();
}
}
因此,我基本上尝试制作一个计时器,但是,由于我实现了这段代码,表单不会出现在任务栏中。实际上,唯一的指示是Visual Studio调试正在运行。进入Windows窗体工具箱。在“组件”下,找到“计时器”。将一个拖放到表单上。它不会显示在您放置它的位置(不可见),但会显示在下面的窗格中 转到新计时器的属性(默认情况下名为“timer1”)并更改:
- 启用至true
- 至1000毫秒的间隔,即1秒
timer1
Timer组件。这将为默认事件创建一个处理程序(勾选
)
使代码看起来像:
while ( int_Timer > 0 )
{
int int_Ticks = 0;
if ( int_Ticks < 100)
{
int_Ticks++;
}
if (int_Ticks == 100)
{
int_Timer--;
lbl_Timer.Text = int_Timer.ToString();
}
}
你应该看到你的标签从1开始计数,直到溢出为止(大约在20亿的北部)。那么,你的“计时器”就是那个循环?那是错误的做法。有几个“计时器”类可用,其中一个是Windows窗体组件—请改用它。你看不到任何东西的原因是你的代码进入了循环(很可能在用户界面线程上)并永远循环。Windows窗体在同一个线程上运行自己的“消息处理器”。通过永远循环,您不会让消息处理器处理消息。
private int _count = 0;
private void timer1_Tick(object sender, EventArgs e)
{
++_count;
Tlbl_Timer.Text = _count.ToString();
}