WinForms に機能を追加して、開始時にカウンターが hh:mm で開始されるようにしたいと考えています。これはタイマーを使用して実行できることを知っています。現在の時刻を表示するタイム ラベルを作成しましたが、フォームが読み込まれたときにタイマーを開始する方法がわかりません。そのためのメソッドまたはクラスはありますか?
質問する
427 次
2 に答える
2
コンポーネントをフォームに配置Timer
します(ツールボックスからドラッグします。フォームが閉じたときに正しく破棄されるようにタイマーをフォームのコンポーネントとして登録する必要があるため、これは重要です)。タイマーのInterval
プロパティを60000
(1分に等しい)に設定します。そして、イベントを購読しTick
ます:
void timer1_Tick(object sender, EventArgs e)
{
if (endTime < DateTime.Now)
{
MessageBox.Show("Time is out!");
timer1.Stop();
return;
}
timeLabel.Text = (endTime - DateTime.Now).ToString(@"hh\:mm");
}
Form_Loadイベントハンドラーでタイマーを開始し、カウントダウンの終了時間を保存します。
private DateTime endTime; // field to store end time
void Form1_Load(object sender, EventArgs e)
{
endTime = DateTime.Now.AddMinutes(120); // set countdown to 120 minutes
timer1.Start();
}
于 2013-01-29T10:50:47.843 に答える
1
タイマーの作成は非常にシンプルで簡単です。
Timer t1 = new Timer();
t1.Interval = 100;
t1.Tick+=new EventHandler(t1_Tick);
t1.Start();
void t1_Tick(object sender, EventArgs e)
{
}
詳細については、 http://msdn.microsoft.com/en-us/library/system.timers.timer( v=vs.80 ).aspx を参照してください。
于 2013-01-29T10:42:12.220 に答える