[英]C# timer starts automatically
我不知道為什么我的計時器會自動啟動。 也許有人可以幫忙嗎?
public int sek;
void TextBox1TextChanged(object sender, EventArgs e)
{
sek = sek+Convert.ToInt32(textBox1.Text);
}
void Button1Click(object sender, EventArgs e)
{
label2.Text = Convert.ToString(sek);
timer1.Start();
}
void Label2Click(object sender, EventArgs e)
{
}
void Timer1Tick(object sender, EventArgs e)
{
label2.Text = Convert.ToString(sek);
if (sek==0){
Console.Beep(1000 ,500);
MessageBox.Show("Times is out");
timer1.Stop();
}
}
如果設計者將Timer.Enabled屬性設置為true,則可能導致這種情況:
將Enabled設置為true與調用Start相同 ,而將Enabled設置為false與調用Stop相同。
因此,請不要在設計器屬性中設置它(即,將其保留為False)。
注意:對於WinForms應用程序,將在適用的“ InitializeComponent”方法中初始化[sub]控件並設置屬性(根據設計者)。 可以通過查看<form> .Designer.cs文件來驗證。
計時器的“已Enabled
屬性指示其當前是否正在運行。
由於在設計器中將該屬性設置為True
,因此計時器會在運行狀態下啟動。 只需將其設置為False
,即可開始停止。
@GrawCube提供的示例圖像:
由於使用的是Winforms計時器,因此需要將其初始狀態設置為Disabled,否則它將立即開始計時。
請參閱: https : //msdn.microsoft.com/zh-cn/library/system.windows.forms.timer.enabled(v=vs.110).aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.