|
■No91557 (りり さん) に返信 > windowsフォームで下記のようなものを作りたいです。 > > タイマー00:00:00表記 ←ラベル1 > スタート ストップ リセット ←ボタン1、2、3 > 現在日時 ←ラベル2 > > 現在日時の取得は出来るのですが、取得した時間が経過しません。
Form のデザイン画面に timer コンポーネントを貼り、 Form のフィールドに Stopwatch 型の変数を用意します。
private System.Diagnostics.Stopwatch sw = new System.Diagnostics.Stopwatch(); private void Form1_Load(… { timer1.Start(); } private void スタート_Click(… { timer1.Start(); } private void ストップ_Click(… { sw.Stop(); } private void リセット_Click(… { if(sw.IsRunning) { sw.Restart(); } else { sw.Reset(); } } private void timer1_Tick(… { TimeSpan span = sw.Elapsed; ラベル1.Text = string.Format("{0}:{1:00}:{2:00}", (int)span.TotalHours, span.Minutes, span.Seconds); // ラベル1.Text = string.Format("{0}:{1:00}:{2:00}.{3:0000}", (int)span.TotalHours, span.Minutes, span.Seconds, span.Milliseconds); ラベル2.Text = DateTime.Now.ToString("F"); }
|