3

時間が毎秒変化するウィンドウのように、アプリケーションの maskedtextbox の変化する時間を設計したいと考えています。以下のように maskedtexbox1 を設定しました。

maskedTextBox1.Text = DateTime.Now.ToShortTimeString();

現在のシステムの短い時間を表示していますが、ウィンドウのように毎秒変化しているわけではありません。実行する方法?

私は Visual Studio 2005 を使用しており、.NET は3.5未満です。

4

3 に答える 3

1

タイマーを使用し、毎秒イベントを発生させて時刻を更新します。

  1. タイマー(TimerパッケージSystem.Windows.Forms内のクラスのインスタンス)を作成します。
  2. その頻度を1秒(つまり1000ミリ秒)に設定します。
  3. オフになったときに呼び出すメソッド(イベントハンドラーKaboom)を指定します。

実行可能コードのどこかで、次のように入力します。

Timer ticker= new Timer();
ticker.Interval = 1000;
ticker.Tick += new EventHandler(Kaboom);

同じクラスで(または、それを行う方法に自信がある場合は、コードに到達できる場所で)、起動されたティックイベントのハンドラーも作成します。これにより、メソッドについて約束したときに呼び出されます。タイマーが切れたままになります。

private void Kaboom(Object sender, EventArgs eventArgs)
{
  // Execute the tickability code
  MaskedTextBox1.Text = DateTime.Now.ToShortTimeString();
}

また、準備ができたと感じたら、実際にティッカーを開始することを忘れないでください。

MyTimer.Start();

多田!

編集:

完全を期すために、@ CuaonLeの返信の一部(.NET 3.5以降の能力と要件のより高いしきい値)も貼り付けます。

Timer timer = new Timer { Interval = 1000 };
timer.Tick += (obj, args) 
  => MaskedTextBox1.Text = DateTime.Now.ToLongTimeString();
timer.Start();
于 2012-11-04T09:26:29.700 に答える
1

maskedTextBox1毎秒更新するタイマーを設定する必要があると思います。

その方法については、次を参照してください: Windows フォーム アプリケーションにタイマーを追加する

乾杯。キース。

于 2012-11-04T09:20:18.677 に答える
1

System.Windows.Forms.Timerたとえば、テキストボックスの値を毎秒更新するために使用できます。

var timer = new Timer();
timer.Interval = 1000;

timer.Tick += delegate
            {
                textBox1.Text = DateTime.Now.ToLongTimeString();
            };

timer.Start();
于 2012-11-04T09:22:33.053 に答える